This suggested command contains design and implementation errors. Consider what happens on April 1st. The grep match string becomes "Apr01" which will not match a directory list.
A less-than-perfect way of picking up files and directories created today is to match against the date and check that there is a colon character somewhere on the line.
The importance here is to get the "date" command right and to preserve spaces in the date throughout by proper use of double quote characters.
Beware of dates with a single digit day. The command "date +%d" which is wrongly advised in various earlier posts gives the day of the month with a leading zero but "ls -lar" give the day of the month with a leading space. Therefore we must use "date +%e" and preserve that space character.
My example is not a recommended method (mainly because it does not work with filenames containing colon characters and is awkward with filenames containing space characters). My earlier post in this thread is a recommended method.
I have task in which I need to pickup a set of files from a directory
depending on the following criteria:
Every month 6 files are expected to arrive at /test.
The files come with date timestamp and the latest file set for the month needs to be used
Suppose this is the set of files that present... (5 Replies)
Hi,
I have some list of directories in the form datemonthyear e.g. 02082009, 03082009 and 04082009 etc.
I need to pick the latest directory from the current working directory.
Outcome:
05082009
This is the output am expecting.
Thanks (6 Replies)
Hi,
I am new to unix and shell scripting,can anybody help me in sctipting a requirement.
my requirement is to get the latest directory the name of the directory will be like CSB.monthdate_time stamp
like CSB.Sep29_11:16 and CSB.Oct01_16:21.
i need to pick the latest directory.
in the... (15 Replies)
Hi
In my script i am trying to access mainframe server using FTP,
in the server i have filee with the timestamp.I need to get the file with the latest timestamp among them . The server has the below files
/
ftp> cd /outbox
250 CWD command successful
ftp> ls
200 PORT command successful... (4 Replies)
Hi
I have a requirement like below
I need to sort the files based on the timestamp in the file name and run them in sorted order and then archive all the files which are one day old to temp directory
My files looks like this
PGABOLTXML1D_201108121235.xml... (1 Reply)
Hi Friends,
Newbie to shell scripting. Currently i have used the below to sort data based on filenames and datestamp
$ printf '%s\n' *.dat* | sort -t. -k3,4
filename_1.dat.20120430.Z
filename_2.dat.20120430.Z
filename_3.dat.20120430.Z
filename_1.dat.20120501.Z
filename_2.dat.20120501.Z... (1 Reply)
Hi Friends,
Newbie to shell scripting
Currently i have used the below to sort data based on filenames and datestamp
$ printf '%s\n' *.dat* | sort -t. -k3,4
filename_1.dat.20120430.Z
filename_2.dat.20120430.Z
filename_3.dat.20120430.Z
filename_1.dat.20120501.Z
filename_2.dat.20120501.Z... (12 Replies)
Hi ,
I did the initial search but could not find what I was expecting for.
15606Always_9999999997_20160418.xml
15606Always_9999999998_20160418.xml
15606Always_9999999999_20160418.xml
9819Always_99999999900_20160418.xml
9819Always_99999999911_20160418.xmlAbove is the list of files I... (4 Replies)
Hi All,
I have list of files like below with name abcxyz.timestamp. I need a unix command to pick the latest file from the list of below files. Here in this case the lates file is abcxyz.20190304103200. I have used this unix command "ls abcxyz*|tail -1" but i heard that it is not the appropriate... (2 Replies)
Discussion started by: rakeshp
2 Replies
LEARN ABOUT ULTRIX
date
date(1) General Commands Manual date(1)Name
date - print date and time
Syntax
date [-c | -u] [ +format ] [[yy[mm[dd]]]hhmm[.ss][-[-]tttt][z]]
Description
If no argument is given, or if the argument begins with +, the current date and time are printed. Otherwise, the current date is set. The
first mm is the month number; dd is the day number in the month; hh is the hour number (24 hour clock); the second mm is the minute number;
.ss the second; -[-]tttt is the minutes west of Greenwich; a positive number means your time zone is west of Greenwich (for example, North
and South America) and a negative number means it is east of Greenwich (for example Europe); z is a one letter code indicating the dst cor-
rection mode (n=none, u=usa, a=australian, w=western europe, m=middle europe, e=eastern europe); yy is the last 2 digits of the year number
and is optional. The following example sets the date to Oct 8, 12:45 AM:
date 10080045
The current year is the default if no year is mentioned. The system operates in GMT. The takes care of the conversion to and from local
standard and daylight time.
If the argument begins with +, the output of is under the control of the user. The format for the output is similar to that of the first
argument to All output fields are of fixed size (zero padded if necessary). Each field descriptor is preceded by % and is replaced in the
output by its corresponding value. A single % is encoded by %%. All other characters are copied to the output without change. The string
is always terminated with a new-line character.
Options-c Perform operations using Coordinated Universal Time (UCT) instead of the default local time. The UCT does not use leap seconds so
UCT is the same as GMT.
-u Perform operations using Greenwich Mean Time (GMT) instead of the default local time.
+ format
The following is a list of field Descriptors that can be used in the format (Note: date exits after processing format information) :
%a Locale's abbreviated weekday name
%A Locale's full weekday name
%b Locale's abbreviated month name
%B Locale's full month name
%c Locale's date and time representation
%d Day of month as a decimal number (01-31)
%D Date (%m/%d/%y)
%h Locale's abbreviated month name
%H Hour as a decimal number (00-23)
%I Hour as a decimal number (01-12)
%j Day of year (001-366)
%m Number of month (01-12)
%M Minute number (00-59)
%n Newline character
%p Locale's equivalent to AM or PM
%r Time in AM/PM notation
%S Second number (00-59)
%t Tab character
%T Time (%H/%M/%S)
%U Week number (00-53), Sunday as first day of week
%w Weekday number (0[Sunday]-6)
%W Week number (00-53), Monday as first day of week
%x Locale's date representation
%X Locale's time representation
%y Year without century (00-99)
%Y Year with century
%Z Timezone name, no characters if no timezone
%% %
Examples
The following command line
date +%m/%d/%y
generates the following output
04/02/89
The following command line
date +"DATE: %m/%d/%y%nTIME: %H:%M:%S"
generates the following output
DATE: 04/02/89
TIME: 14:45:05
The quotes (") are necessary because the format contains blank characters. Use single quotes (') to prevent interpretation by the shell.
Diagnostics
Failed to set date: Not owner
You are not the super-user and you tryed to change the date. Do not change the date while the system is running in multiuser mode.
Restrictions
An attempt to set a date to before 1/1/1970 will result in the date being set to 1/1/1970.
Files
/dev/kmem
date(1)