Is there any possibility to pass current date/time to command in my cron job? E.g. I want to make sql dump every night and name the dump file like 'dump-yyyy-mm-dd.sql'.

2 Answers 2


That would be something along the lines of:

mysqldump database > database-$(date +%F).sql

The $() will embed the output of date +%F, which is YYYY-MM-DD into the command line.

  • You should be careful to escape %s with backslashes in your format string if you're using a POSIX compliant cron, otherwise everything after the first % will be treated as standard input for the command. Check man 5 crontab for details on this surprising yet fun feature.
    – mark
    Aug 2, 2011 at 12:27

Sgaduuw's answer does work (and I've upvoted it), but I usually encourage people to write scripts and call those from cron, rather than try and do too much in the cron command directly. Firstly, it allows you to easily test / enhance your script without having to mess with cron configuration, and secondly it allows you to be in better control of the environment in which your commands execute.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .