Date format script (in .sh)


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Date format script (in .sh)
# 1  
Old 03-09-2010
Date format script (in .sh)

Could anyone suggest me on how to write unix script for displaying yesterdays date ie. if today is 2nd Mar then when i run .sh script i should get displayed as "01-Mar-2010".
# 2  
Old 03-09-2010
Code:
#!/bin/bash

#call with deltaday 'date' 'deltadays'

#there is no error checking, use at your own use...

if [ ! -n "$1" ]
then
  echo "Usage: `basename $0` YYYYMMDD [+-days]"
  exit $E_BADARGS
fi  

if [ ! -n "$2" ]
then
  	deltadays=-1
  else
	deltadays=$2
fi  


epoch=$(date -j -f "%Y%m%d" $1 "+%s")

(( deltadays *= 60*60*24 ))
(( epoch += deltadays )) 

newday=$(date -j -f "%s" $epoch "+%Y%m%d")

echo $newday

This is dependent on the date utility being similar to BSD. It is different on Linux and Solaris...
# 3  
Old 03-09-2010
hmmm.. looks complicated...
i just want to print a date in my subject of a mail sent from the script.
# 4  
Old 03-09-2010
What OS?

Read the man page for date.

Under Linux, it may be as simple as

Code:
date -d "yesterday"

# 5  
Old 03-09-2010
ok. that looks much simpler.

my subject is like ABCDEFGHIJ DATE(DD-MON-YY) Format.

its in a shell script which after execution ll mail to an mail id.
# 6  
Old 03-09-2010
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Changing date format with script

I'm trying to change date format using this script from day/month/year to month/day/year #!/bin/bash while read line; do echo "$line" date=$(echo "$line" | cut -d/ -f1 ) month=$(echo "$line" | cut -d/ -f2 ) echo $month"/"$date"/2017" done < ~/Downloads/Dates.csv But I get output as... (5 Replies)
Discussion started by: sharat
5 Replies

2. UNIX for Dummies Questions & Answers

Rename all Files in a UNIX Directory from one date format to another date format

Hi Unix Gurus, I would like to rename several files in a Unix Directory . The filenames can have more than 1 underscore ( _ ) and the last underscore is always followed by a date in the format mmddyyyy. The Extension of the files can be .txt or .pdf or .xls etc and is case insensitive ie... (1 Reply)
Discussion started by: pchegoor
1 Replies

3. UNIX for Dummies Questions & Answers

Date format in Bash Script

Hi Experts I'm struggling with the dates in bash scripting. here is my code due1=`grep "$member" Due.txt | tail -n 1 | cut -d "," -f2 | tr -d "\15"` duedate1=`date +%Y-%m-%$due1` echo $due1 echo $duedate1 if I execute the above code I get output as 10 2013-09 %10 ... (2 Replies)
Discussion started by: parpaa
2 Replies

4. UNIX for Dummies Questions & Answers

Date format in Bash Script

Hi Experts, We get "Day" of a month in a variable, so how to make date of out it? To make more sense if my variable $DAY contains "12" and month and year will be current date (as of today) so I want to see as output as 2013-09-12. How can I achive this bash script?? Any help is... (4 Replies)
Discussion started by: parpaa
4 Replies

5. Shell Programming and Scripting

Getting Proper Date Format in SH Script

There's a small SH script I'm trying to write where it will get the current month and find a log file that is based on the date. Example: Today is February, so the log file is going to be 201102.log (2011 + 02) An additional thing is that if today is the 1st of a month, it will also find the log... (3 Replies)
Discussion started by: kooshi
3 Replies

6. Shell Programming and Scripting

Changing the date format in a script

Hi, I run a script which outputs various records, anyway one of the columns contains the date in the format DDMMYYYY, I would like to make this DDMMYY. Is there an easy way to do this, (11 Replies)
Discussion started by: mcclunyboy
11 Replies

7. Shell Programming and Scripting

How to increment a user defined date value in the DATE format itself using shell script?

I need to increment a date value through shell script. Input value consist of start date and end date in DATE format of unix. For eg. I need increment a date value of 1/1/09 to 31/12/09 i.e for a whole yr. The output must look like 1/1/09 2/2/09 . . . 31/1/09 . . 1/2/09 . 28/2/09... (1 Reply)
Discussion started by: sunil087
1 Replies

8. UNIX for Dummies Questions & Answers

Changing from Excel date format to MySQL date format

I have a list of dates in the following format: mm/dd/yyyy and want to change these to the MySQL standard format: yyyy-mm-dd. The dates in the original file may or may not be zero padded, so April is sometimes "04" and other times simply "4". This is what I use to change the format: sed -i '' -e... (2 Replies)
Discussion started by: figaro
2 Replies

9. Shell Programming and Scripting

convert date format to mysql date format in log file

I have a comma delimited log file which has the date as MM/DD/YY in the 2nd column, and HH:MM:SS in the 3rd column. I need to change the date format to YYYY-MM-DD and merge it with the the time HH:MM:SS. How will I got about this? Sample input 02/27/09,23:52:31 02/27/09,23:52:52... (3 Replies)
Discussion started by: hazno
3 Replies

10. Shell Programming and Scripting

help for change date format script

Someone can help me write a script for change date fromat from "Feb 4 18:44:03 2009" to 2009020418 ? from "Mar 17 16:44:03 2009" to 2009031716 ? (4 Replies)
Discussion started by: pccwtest
4 Replies
Login or Register to Ask a Question