@linux下配置crontab执行python文件

   日期:2020-08-21     浏览:90    评论:0    
核心提示:linux下配置crontab执行python文件crontab是Linux提供的定时工具,crontab命令常用于设置周期性被执行的指令,也可以理解为设置定时任务。添加定时任务1.确保crontab状态,执行service crond status是running的状态如果没有crontab则需要进行安装1.执行cat /etc/cron得到相应参数第一个*对应的是分钟,以此类推就是小时,天,月,周等user-name需要指定用户,默认是本机用户2.执行crontab -e,进入脚本

linux下配置crontab执行python文件

crontab是Linux提供的定时工具,crontab命令常用于设置周期性被执行的指令,也可以理解为设置定时任务。

添加定时任务

1.确保crontab状态,执行service crond status是running的状态

如果没有crontab则需要进行安装
1.执行cat /etc/cron

得到相应参数
第一个*对应的是分钟,以此类推就是小时,天,月,周等
user-name需要指定用户,默认是本机用户

2.执行crontab -e,进入脚本配置页面,可以根据自己的需要进行添加,这里python的路径以及脚本的路径需要写绝对路径,不然可能不会认
例如:

这里就是标示每5分钟执行一次后面的命令
进行保存

3.执行crontab -l 查看是否在任务列表中

4.服务操作说明:

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置

5.查看日志输出
之前的查阅中很多说可以到/var/logs/cron.log中查看,但是机器中并没有看到,和我有一样困扰的,可以利用重定向输出日志来进行定位
只需要在任务后面追加日志重定向输出

重定向类型
0:标准输入。
1:标准输出。
2:错误信息输出。
2>&1:将错误信息重定向到标准输出。

1,python xxx.py>server.log,将执行的错误信息输出重定向到当前目录的server.log日志文件中。
2,python xxx.py>server.log,将./spark-submit.sh执行的标准输出和错误信息重定向到当前目录的server.log日志文件中。
3,如果想标准输出和错误信息都不显示,可以重定向到/dev/null中。

现在来仔细说一下如何编写crontab中的命令:
首先第一个参数user-name一般来说默认用户即可
后面接着的参数即为你需要执行
例如:在本机上只需要执行python ***.py即可
但是在crontab中需要给出绝对路径,和需要执行source
例如:

source /home/work/.bash_profile && cd /home/work/workspace/sss && git pull && PYTHONPATH=. python tools/docker/cron/cron_check_status.py         >> /home/work/workspace/sss/tools/docker/cron/cron_check_status.log

这样,其中也需要指出python的路径

还有一种方式就是将上面的命令写成shell脚本或者python文件后再直接写入:
python dev/projects/sss/cron_t.py >>/data/logs/cron/cron_stout.log 2>&1
其中cron_t.py中已经封装了上述命令

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服