Ubuntu学步者学ubuntulinux系统ubuntu的使用以及python基本内容

使用Ubuntu的Cron固定时间执行Python脚本

2019-05-25  本文已影响0人  伪学识青年

最近需要在固定时间执行Python脚本,发现Ubuntu自带的Crontab可以实现所需功能

具体使用方法如下:

安装crontab(若linux上未安装):

apt-get install cron

开启cron服务:

service cron start

cron命令使用语法为:

语法图

设置对应的时间,将对应位置上的"*"替换为数字即可

注:默认*号为全部

也可使用区间表示:例:1-7

例如需要在周一至周五上午9:15运行,命令为为:

15 9 * * 1-5 要执行的脚本路径

注:脚本路径最好使用绝对路径

接下来测试执行一个脚本test.py,执行时间为每分钟都运行:

首先执行:crontab –e

在打开的文件中添加一行:

*/1 * * * * /usr/bin/python /root/MyNewsWeb/test.py> /dev/2qw.txt

注:test.py的执行结果将会输出至/dev/2wq.txt文件中

添加完成后使用快捷键:Ctrl+O

提示是否保存文件,按回车确认

使用快捷键Ctrl+X推出

一切顺利Ubuntu便会输出:

crontab: installing new crontab

表示修改成功

重启Cron:

service cron restart

然后就可以使用 

service cron status

来查看是否运行:

得到类似输出表示正常运行:

root@iZuf6ismitg2f3hxl8uyawZ:/dev# service cron status

● cron.service - Regular background program processing daemon

  Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)

  Active: active (running) since Sat 2019-05-25 20:59:34 CST; 37s ago

    Docs: man:cron(8)

Main PID: 5620 (cron)

    Tasks: 1 (limit: 2340)

  CGroup: /system.slice/cron.service

          └─5620 /usr/sbin/cron -f

May 25 20:59:34 iZuf6ismitg2f3hxl8uyawZ systemd[1]: Started Regular background program processing daemon.

May 25 20:59:34 iZuf6ismitg2f3hxl8uyawZ cron[5620]: (CRON) INFO (pidfile fd = 3)

May 25 20:59:34 iZuf6ismitg2f3hxl8uyawZ cron[5620]: (CRON) INFO (Skipping @reboot jobs -- not system startup)

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5772]: pam_unix(cron:session): session opened for user root by (uid=0)

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5771]: pam_unix(cron:session): session opened for user root by (uid=0)

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5778]: (root) CMD (/usr/bin/python /root/MyNewsWeb/test.py> /dev/3qw.txt)

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5779]: (root) CMD (/usr/bin/python /root/MyNewsWeb/test.py> /dev/2qw.txt)

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5772]: pam_unix(cron:session): session closed for user root

May 25 21:00:01 iZuf6ismitg2f3hxl8uyawZ CRON[5771]: pam_unix(cron:session): session closed for user root

正确执行,我们查看/dev/2qw.txt文件:

vi /dev/2qw.txt

发现有了输出结果:

2019-05-25 21:16:01.702503

表示正常执行。

若觉得自己修改参数麻烦,也可以使用这个网站自动生成命令:

参考资料:

https://medium.com/@gavinwiener/how-to-schedule-a-python-script-cron-job-dea6cbf69f4e

https://vexxhost.com/resources/tutorials/how-to-use-cron-jobs-for-automation-on-ubuntu-14-04/

上一篇下一篇

猜你喜欢

热点阅读