crontab 进行 定时任务的设置
概述:
任务调度:是指系统在某个时间执行的特定的命令或程序
任务调度分类: 1.系统工作:有些重要的工作必须周而复始的执行,如病毒扫描
2.个别用户工作: 个别用户可能希望执行某些程序,比如mysql数据库的备份
基本语法: crontab [选项]
-e 表示写入
-r 表示终止任务调度
-l 查看当前那些任务调度
service crond restart 重启任务调度
常用选项: -e 编辑crontab定时任务 -l查询crontab任务 -r删除当前用户所有的crontab任务
执行: crontab -e 命令
接着输入任务到调度文件: 如 */1 * * * * ls -l /etc/ > /tmp/to.txt
应用实例:
案例一: 每个一分钟,九江当前的日期信息,追加到 /tmp/mydate 文件中
crontab -e
*/1 * * * * date >> /tmp/mydate
案例二: 每隔一分钟,将当前日期和日历都追加到 /home/mycal 文件里面
步骤:(1) vim /home/my.sh 写入内容: date >> mycal cal>>mycal
(2) 给my.sh 增加执行权限,chmod u+x /home/my.sh
(3)crontab -e 写入 */1 * * * * /home/my.sh
at定时任务
基本语法
1.at 命令是一次性定时计划任务,at的守护进程atd会在后台模型进行,检查作业队列来运行
2.默认情况下, atd 守护进程每60s检查作业队列,有作业时,会检查运行时间,如果时间与当前时间匹配,则运行此作业
3.at 命令是一次性定时计划任务,执行完一个任务之后不再执行此任务
4.使用at命令的时候,一定要保证atd进程的启动,可以使用相关指令来查看(ps -ef | grep atd)
用 at[选项] [时间] 来个atd来添加
at 后面时间的指定
CTRL + D 结束at命令
at定时任务案例
案例1: 2天后的下午5点执行 /bin/ls /home
输入两次CTRL+D退出
案例2 :atq命令查看系统中没有执行的任务
案例3 :明天17 殿中,输入时间到指定文件内,比如 /root/date100.log
案例4:删除已经设置好的任务
atrm + 任务编号