小明是一个服务器管理员,他需要每天备份论坛数据(这里我们用 alternatives.log 日志替代),备份当天的日志并删除之前的日志。而且备份之后文件名是 年-月-日 的格式。alternatives.log 在 /var/log/ 下面。
目标
- 为 skx 用户添加计划任务
- 每天凌晨 3 点的时候定时备份 alternatives.log 到 /home/skx/tmp/ 目录
- 命名格式为 年-月-日,比如今天是 2017 年 4 月 1 日,那么文件名为 2017-04-01
提示语
- date
- crontab
- cp 命令
- 用一条命令写在 crontab 里面即可,不用写脚本
注意 crontab 的计划任务设定的用户:
$ crontab -e #表示为当前用户添加计划任务
$ sudo crontab -e #表示为root用户添加计划任务
注意使用下面的命令启动 crontab:
$ sudo cron -f &
参考答案
注意:独立思考之后再对照参考答案,否则收获不大。
sudo cron -f & #本地中Ubuntu会默认自行启动不需要手动启动,可以省略这个步骤
crontab -e 添加
0 3 * * * rm /home/skx/tmp/*
0 3 * * * cp /var/log/alternatives.log /home/skx/tmp/$(date +\%Y-\%m-\%d)