Linux Crontab定时运行程序

1、Crond命令详解
crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程
Linux Crontab定时运行程序_第1张图片
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件

ps:

#每天11.30运行脚本
30 11 * * *  /home/test.sh 
#每隔1分钟就运行一次脚本    
*/1 * * * *  /home/test.sh  
#执行Python脚本   
30 0 * * *  /home/test.py

注意:
如果多个python版本的情况下,在crontab执行python的目录下,对应的可能是某个版本,在其他目录下,执行的python又是另一个版本。例如(以假设为例),crontab对应的/root目录下的python3.5,但是/data/test/运行的python对应的是python3.7,所以为了避免用错版本,应设置如下(这里假设python3.7对应安装在/usr/local/bin/目录下):

30 0 * * *  /usr/local/bin//python3.7  /home/test.py

打印错误日志:

30 0 * * * sh /home/test.py>/home/log 2>&1

对于& 1 更准确的说应该是文件描述符 1,而1标识标准输出,stdout。
对于2 ,表示标准错误,stderr。
2>&1 的意思就是将标准错误重定向到标准输出。

2、Crond状态
首先参看 crond 状态

service crond status

如果关闭的话,就将其启动或者重启

服务操作说明

/sbin/service crond start       //启动服务
/sbin/service crond stop       //关闭服务
/sbin/service crond restart       //重启服务
/sbin/service crond reload       //重新载入配置
/sbin/service crond status       //启动服务

常用方法

crontab -l       #查看现有的所有 crontab 任务
crontab -e       #添加或修改 crontab 任务(类似与vim)

你可能感兴趣的:(linux命令学习)