06-17-2009
date-ification script
#!/bin/sh -f
if [ "${1}" = "" ]; then
echo " Usage: $0 <filename>"
exit 1
elif [ ! -e "${1}" ]; then
echo "File ${1} not found"
exit 2
fi
year=`date +%Y`
mon=`date +%m`
mon3=`date +%b`
day=`date +%d`
base=`echo ${1} | cut -d'.' -f1`
suf=`echo ${1} | cut -d'.' -f2`
newfile=${base}${year}${mon}${day}.${suf}
echo "current system date: ${day}-${mon3}-${year}"
echo "filename: ${1}"
echo "new filename: ${newfile}"
mv ${1} ${newfile}
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
I want to check what day is today (like mon,Tue,wed)
When i checked the syntax, i dont see there is a format specifier for getting the day. Let me know how to get the same.
I am very new to unix and so I am asking some basic questions.
cheers,
gops (2 Replies)
Discussion started by: gopskrish
2 Replies
2. UNIX for Dummies Questions & Answers
Hello Friends,
I've been struggling with extreme nagios passive service checks. In order to trigger a nagios passive service im going to write an easy shell script like below and will run it in crontab.
As im working on Solaris 10 servers i used "S" instead of lowercase "s" below
#!/bin/sh... (2 Replies)
Discussion started by: EAGL€
2 Replies
3. Shell Programming and Scripting
Hi,
Anybody knows how to get what date was 28 days ago of the current system date through UNIX script.
Ex : - If today is 28th Mar 2010 then I have to delete the files which arrived on 1st Mar 2010, (15 Replies)
Discussion started by: kandi.reddy
15 Replies
4. Shell Programming and Scripting
Hi all,
I've used various scripts in the past to work out the date last week from the current date, however I now have a need to work out the date 1 week from a given date.
So for example, if I have a date of the 23rd July 2010, I would like a script that can work out that one week back was... (4 Replies)
Discussion started by: Donkey25
4 Replies
5. UNIX for Dummies Questions & Answers
Hello gurus,
I am hoping someone can help me with the required code/script to make this work. I have the following file with records starting at line 4:
NETW~US60~000000000013220694~002~~IT~USD~2.24~20110201~99991231~01~01~20101104~... (4 Replies)
Discussion started by: chumsky
4 Replies
6. Shell Programming and Scripting
HI,
I have csv file with records as shown below.
4102,Bangalore,G10,21,08/17/2011 09:28:33:188,99,08/17/2011 09:27:33:881,08/17/2011... (1 Reply)
Discussion started by: raghavendra.nsn
1 Replies
7. UNIX for Dummies Questions & Answers
Hi Guys,
Anyone who knows how to compare the current date with the a file containing a date, say for example I have a file that looks like this:
Command was launched from partition 0.
------------------------------------------------
Executing command in server server6
Fri Dec 16... (7 Replies)
Discussion started by: rymnd_12345
7 Replies
8. Shell Programming and Scripting
Hi all,
Following is my small script:-
#!/bin/ksh
for i in `cat /users/jack/mainfile-dr.txt`
do
sudo cp -r $i /users/jack/DR01/.
done
cd /users/jack/DR01/
sudo tar cvf system1-DR.tar *
scp system1-DR.tar backupserver:/DRFiles/system1
sudo rm -rf system1-DR.tar
In this script I... (10 Replies)
Discussion started by: manalisharmabe
10 Replies
9. UNIX for Beginners Questions & Answers
Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt .
I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies
10. Answers to Frequently Asked Questions
I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies
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)