前言
我们常用linux做一些定时任务,最常见的就是在服务器领域,我们常常做一些定时任务来定时执行一些脚本,那么接下来我们就来看看linux中的任务调度相关知识以及一些案例吧!
crond 任务调度
用 crontab 进行定时任务的设置
概述
任务调度:是指系统在某个时间执行的特定的命令或程序。
任务调度分类:
1、系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等。
2、个别用户工作,个别用户可能希望执行某些程序,比如对 mysql 数据库的备份。
基本语法
常用选项
快速入门
1.设置个人任务调度:crontab -e
2.输入任务:
如:
*/1 * * * * ls -l /etc/ > /tmp/to.txt
这个命令的意思是每小时的每分钟执行ls -l /etc/ > /tmp/to.txt
参数细节说明:
1.*号的说明
即:
分 时 日 月 星期几 [命令]
2.特殊符号的说明
注:
- 如果只是简单的任务,可以不用写脚本,直接在 crontab 中加入任务即可。
- 对于比较复杂的任务,需要写脚本。(Shell 编程)
案例
案例一:每隔一分钟将ls -l /etc/ 追加到 /tmp/to.txt 文件
*/1 * * * * ls -l /etc/ >> /tmp/to.txt
可以看到定时任务已经建立!
执行成功!
利用trontab -l可以查看当前的定时任务!
利用trontab -r可以结束所有的定时任务!
案例二:每隔一分钟执行python文件
每隔一分钟执行/tmp/hello.py文件,这个文件里写输出"hello world!"
使用 vi /tmp/hello.py 创建并打开hello.py文件
写入:
print("hello world!")
然后看看这个hello.py的权限,为root用户添加执行它的权限
chmod 744 hello.py
然后 crontab -e 让python执行这个hello.py文件,将结果输入到 log.txt
*/1 * * * * /usr/bin/python3 /tmp/hello.py >> /tmp/log.txt
可以看到,执行成功!
结语
如果你觉得博主写的还不错的话,可以关注一下当前专栏,博主会更完这个系列的哦!也欢迎订阅博主的其他好的专栏。