当我尝试使用crontab -e将命令添加到我的crontab时,我收到错误“crontab文件中的错误,无法安装”,并询问我是否要重试.
mkdir /home/MysqL-backup/`date '+%m-%d-%Y'`; MysqL -s -r -e 'show databases' | while read db; do MysqLdump $db -r /home/MysqL-backup/`date '+%m-%d-%Y'`/${db}.sql; done; rm -r -f `date --date="1 week ago" +%m-%d-%Y`; du -k |sort -n > output; mail -s "MysqL Backups" "steven@brightbear.net" < output
我应该在这个档案中改变什么吗?或者我应该考虑创建一个脚本文件并从cron调用它.
提前感谢您提供的任何帮助.
解决方法:
如果您将该脚本提供给crontab -e当然会不同意. crontab文件中的一行应以5个字段开头,指示您希望脚本运行的时间,如can be read in crontab’s manpage.
另一方面,现在大多数Linux发行版都预设了应该按小时(/etc/cron.hourly),每天(/etc/cron.daily)等执行的设施.只需放置脚本就容易多了.在相应目录中的文件中,它将在选定的时间栅格中执行.另一个优点是,在这些文件中,您不会被迫将所有内容塞入一行.