云服务器定时执行python脚本

前言

在服务器上定时执行任务有两种方式,一种是at定时任务,一种是crond任务调度,at命令是一次性定时计划任务,at的守护进程 atd会以后台模式运行,检查作业队列来运行。默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了,crond任务调度可以周期性的执行某一任务,只需要进行简单的配置即可。

crontab简介

基本语法

crontab [选项]

  • -e编辑crontab定时任务

  • -l查询crontab定时任务

  • -r删除当前用户的所有定时任务

  • eg:crontab -e #进行定时任务的编辑

定时任务具体内容

例:

*/1 * * * * ls -l /etc/ > /tmp/to.txt

解释:

​ 每分钟执行一次ls -l查看/etc/目录下的所有文件内容,将查看结果输出到/tmp/to.txt文件内(这个输出的过程称为重定向)

关于如何定时可以看下面两个表格:

请添加图片描述
请添加图片描述
请添加图片描述

python 脚本定时任务

查看安装python解释器的位置:

whereis python

请添加图片描述

设置定时任务(设置之前可以先在控制台测试一下脚本能不能跑通)
执行周期 Python解释器安装的位置 -u python脚本存放的位置 >> 执行脚本生成的日志

10 7 * * * /root/anaconda3/bin/python3.7 -u /root/zscDemo/pythonDemo/dayReport/test.py >> /root/zscDemo/pythonDemo/dayReport/test.log
* * * * * /root/anaconda3/bin/python3.7 -u /root/zscDemo/pythonDemo/dayReport/main.py >> /root/zscDemo/pythonDemo/dayReport/main.log

解释:
这里的-u不写的话python脚本内的打印结果没有办法打印到日志内,-u代表的是执行过程中禁用缓冲区。禁用缓冲区print的东西会直接重定向到后面的文件内。

关于>>重定向符。两个>代表的是在原有的文件内追加,一个的话是覆盖。
这里只介绍了如何定时一个定时器,如何使用定时器快速的配置一个python脚本并进行重定向设置,如果自己用还可以,如果想真真的运用到实际生产过程中还需要自己去琢磨琢磨。可以去CSDN、菜鸟教程、哔哩哔哩上进行深入学习。相应的资源还是挺丰富的。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷尔。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值