shan1. Crontab介绍
Crontab 是用来定期执行程序的命令
注意:新创建的任务不会立马执行,至少要等2分钟之后才会自动执行,如果要立马执行则需要重启cron达到目的。
2. Crontab 基本命令和使用
查看系统的cron作业列表:
crontab -l
*注意: 如果本机上没有crontab 任务 则会提示
主要原因是由于这个liunx服务器 第一次使用 crontab 还没有生成对应的文件
执行了 编辑(crontab -e)后 可以生成文件
然后再 esc :wq
之后再重新输入crontab -l 就会可以运行
添加或编辑定时作业
crontab -e
然后会出现一个编辑框 输入a 或者 i 可以编辑定时作业
输入完 * * * * * command 之后esc
然后: wq保存一下
部署定时任务
* * * * * command
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件路径
例子:
30 0 * * * (cd /data/file_dir;sh file.sh) # 每天00:30运行
*/1 * * * * /home/anaconda3/bin/python /home/test.py # 每隔一分钟运行
0 17 * * 1-5 /home/anaconda3/bin/python /home/test.py # 每周一到周五下午五点运行
30 6 */10 * * ls # 意思是每月的1、11、21、31日是的6:30执行一次ls命令
删除当前作业(一般不用这个方法)
crontab -r
!!!!!!!如果定时任务部署完成之后不能自动运行 可能是没有权限的问题, 可以cd 到文件的目录底下 然后ll一下 如果文件前面是-rw-r--r 就是没有权限要给这个任务加权限
加权限的话到相对应目录底下 然后
chmod 777 main_process.py
然后再次ll就会发现前面变成了 -rwxrwxrwx 就是已经有权限了
***内容参考Linux crontab 命令 | 菜鸟教程 (runoob.com)
***内容图片参考Linux Crontab定时运行python程序 - 简书 (jianshu.com)