Append Current Date To Filename in Bash Shell

by on April 26, 2010 · 3 comments· last updated at April 26, 2011

How do I append current date (mm_dd_yyyy format) to a filename (e.g., backup_mm_dd_yyyy.sql) under UNIX like operating systems?

To get the current date in mm_dd_yyyy format use the following date format syntax:

 
date +"%m_%d_%Y"
 

You can store this to a variable name:

 
now=$(date +"%m_%d_%Y")
 

OR

 
now=`date +"%m_%d_%Y"`
 

Finally, you can create a filename as follows:

 
now=$(date +"%m_%d_%Y")
echo "Filename : /nas/backup_$now.sql"
 

Sample outputs:

Filename : /nas/backup_04_27_2010.sql

You can create a shell script as follows:

 
#!/bin/bash
_now=$(date +"%m_%d_%Y")
_file="/nas/backup_$_now.sql"
echo "Starting backup to $_file..."
# mysqldump -u admin -p'myPasswordHere' myDbNameHere > "$_file"
 


You should follow me on twitter here or grab rss feed to keep track of new changes.

Featured Articles:

{ 3 comments… read them below or add one }

1 tiwale August 21, 2012 at 12:19 pm

great tip, it will be handy one day…

Reply

2 john September 20, 2012 at 2:26 pm

nice!

Reply

3 David H April 6, 2013 at 5:04 pm

Thanks. This was really handy reference.

Reply

Leave a Comment

You can use these HTML tags and attributes for your code and commands: <strong> <em> <ol> <li> <u> <ul> <kbd> <blockquote> <pre> <a href="" title="">

Tagged as: , , , , , , , , , , , ,

Previous Faq:

Next Faq: