我已经在Web主机上创建了一个Cron任务来每天备份我的数据库,我希望它将当前日期附加到文件名中。
我的Cron工作看起来像这样
mysqldump -u username -pPassword db_name > www/db_backup/db_backup+date%d%m%y.sql
但是我得到的文件是这个:db_backup + date没有文件扩展名或日期。
我也尝试过此命令
mysqldump -u username -pPassword db_name > www/db_backup/db_backup_'date +%d%m%y'.sql
但是那甚至都不提供文件输出。
将日期附加到我的文件的正确语法是什么?
您应该在要执行的命令周围使用``
而不是''
来生成文件名的当前日期。
* * * * * echo "hello" > /tmp/helloFile_$(date +\%Y\%m\%d\%H\%M\%S).txt
您只需要转义括号即可。
其他日期格式:http://www.cyberciti.biz/faq/linux-unix-formatting-dates-for-display/
每次执行命令时,我需要创建一个新的日志文件。所以每天我都应该有这样的日志/home/me/Logs/power_20151230.log
我使用的crontab
行是这样的:
00 8 * * * /home/me/power.py ON >> /home/me/Logs/power\_`date +20\%y\%m\%d`
[Note下划线字符也必须转义。
您必须转义格式并使用评估
mysqldump -u username -pPassword db_name > www/db_backup/db_backup_`date +\%d\%m\%y`.sql