Date command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Date command
# 29  
Old 09-12-2012
So close, if I run it like this as a spereate script then it gives me exactly what I want 120905

Code:
#!/bin/bash
#
DATE=$(perl -e '@f=localtime(time-(86400*7));printf "%02d%02d%02d\n",$f[5]%100,$f[4]+1,$f[3];')
#
echo $DATE

but then if I run it in my main script then it still prints the current day, anything you can see that Im doing wrong?

Code:
 
#!/bin/bash
#A backup script if the default data file has not been sent over 
EXTEN=.txt
VALID=VSL0120
DATE1=$(date +%y%m%d)
DATE2=000000
DATE3=(perl -e '@f=localtime(time-(86400*7));printf "%02d%02d%02d\n",$f[5]%100,$f[4]+1,$f[3];')
DIR=/apps/live/aahvanroutedata
if [ ! -e $DIR/VSL01_D* ]
then 
echo "We have not received todays default data file from Alliance, the default data file has been used from the previous week" > default_data_backup_email
cp $DIR/archive/$VALID$DATE3$DATE2$EXTEN $DIR/$VALID$DATE1$DATE2$EXTEN >> /export/home/tjmoore/default_data_backup_email
/usr/local/bds/mailsend.s mailx "Backup Default Data File has been used" <email address> <email address> /export/home/tjmoore/default_data_backup_email 2>&1 >/dev/null
fi
exit

# 30  
Old 09-12-2012
You forgot "$"
Code:
DATE3=(perl -e '@f=localtime(time-(86400*7));printf "%02d%02d%02d\n",$f[5]%100,$f[4]+1,$f[3];')

should be
Code:
 DATE3=$(perl -e '@f=localtime(time-(86400*7));printf "%02d%02d%02d\n",$f[5]%100,$f[4]+1,$f[3];')

Have you read my last post before this?
Quote:
Originally Posted by 244an
...
It seems that you are not testing all suggestions as they are typed, like this.
There was also some other suggestions in that post.

Last edited by 244an; 09-12-2012 at 10:34 AM..
This User Gave Thanks to 244an For This Post:
# 31  
Old 09-13-2012
sorry 244an I mst have missed your last post, have been very busy on a tight deadline with this script among other things.

I've managed to get my script working now though Smilie Using perl as suggested above.

Many thanks for everyones help

Finishing Script:
Code:
 
#!/bin/bash
#A backup script if the default data file has not been sent over 
EXTEN=.txt
VALID=VSL0120
DATE1=$(date +%y%m%d)
DATE2=000000
DATE3=$(perl -e '@f=localtime(time-(86400*7));printf "%02d%02d%02d\n",$f[5]%100,$f[4]+1,$f[3];')
DIR=/apps/live/aahvanroutedata
DATE4=$(cat /export/home/tjmoore/default_data_file)
if [ ! -e $DIR/VSL0120$DATE1* ]
then 
echo "We have not received todays default data file from Alliance, the default data file has been used from the previous week" > default_data_backup_email
echo $DIR/archive/$VALID$DATE3$DATE2$EXTEN > /export/home/tjmoore/default_data_file 
cp $DATE4 $DIR/$VALID$DATE1$DATE2$EXTEN >> /export/home/tjmoore/default_data_backup_email
/usr/local/bds/mailsend.s mailx "Backup Default Data File has been used" <email address> <email address> /usr/local/routines/default_data_backup_email 2>&1 >/dev/null
fi
exit

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. HP-UX

awk command in hp UNIX subtract 30 days automatically from current date without date illegal option

current date command runs well awk -v t="$(date +%Y-%m-%d)" -F "'" '$1 < t' myname.dat subtract 30 days fails awk -v t="$(date --date="-30days" +%Y-%m-%d)" -F "'" '$1 < t' myname.dat awk command in hp unix subtract 30 days automatically from current date without date illegal option error... (20 Replies)
Discussion started by: kmarcus
20 Replies

2. HP-UX

HP/UX command to pull file name/date based on date

HI, Can anyone tell me how to pull the date and file name separated by a space using the find command or any other command. I want to look through several directories and based on a date timeframe (find -mtime -7), output the file name (without the path) and the date(in format mmddyyyy) to a... (2 Replies)
Discussion started by: lnemitz
2 Replies

3. Shell Programming and Scripting

Find week of the year for given date using date command inside awk

Hi all, Need an urgent help on the below scenario. script: awk -F"," 'BEGIN { #some variable assignment} { #some calculation and put values in array} END { year=#getting it from array and assume this will be 2014 month=#getting it from array and this will be 05 date=#... (7 Replies)
Discussion started by: vijaidhas
7 Replies

4. Shell Programming and Scripting

How to get tomorrow,yesterday date from date Command

Hi I want to get tomorrow and yesterday date from date command. My shell is KSH and server is AIX. I tried several options, but unable to do. Please help on this. Regards Rajesh (5 Replies)
Discussion started by: rajeshmepco
5 Replies

5. Shell Programming and Scripting

how to obtain date and day of the week from `date` command

Hi, does anybody know how to format `date` command correctly to return the day of the week? Thanks -A I work in ksh.... (1 Reply)
Discussion started by: aoussenko
1 Replies

6. Shell Programming and Scripting

date command

Hi is it possible to give the date command like 24th July 2009 ive tried DATE=`date "+%d%m%Y" echo $DATE that only replies 2009 correctly. not sure how to display the month in full or if unix knows how to do i.e 2nd, 24th, 3rd (1 Reply)
Discussion started by: magnia
1 Replies

7. UNIX for Dummies Questions & Answers

date command

Hi All. I'm using date -a to 'drift' the time forward / backwards. The question is - how do I know when its finished 'drifting' ? On some systems I have another time reference I can use but not always. thanks (1 Reply)
Discussion started by: Mudshark
1 Replies

8. Shell Programming and Scripting

want to get previous date from date command in ksh

I want to get previous date from date command. I am using ksh shell. Exmp: today is 2008.09.04 I want the result : 2008.09.03 Please help. Thanks in advance. (4 Replies)
Discussion started by: rinku
4 Replies

9. UNIX for Dummies Questions & Answers

Date Command

we're using HP-UX I need to change the year. What is the date command? Thanks (2 Replies)
Discussion started by: saldana
2 Replies

10. UNIX for Dummies Questions & Answers

date command

Using the date command how do get yesterday's date?? e.g. date '+%b%e%Y' July 30 2002 I need to get July 29 2002 using the date command. Thanx (p.s. sorry if it's a very obvious question) (6 Replies)
Discussion started by: niamo1
6 Replies
Login or Register to Ask a Question