linux 新手提问,我有一段程序,test.py,想让linux每隔6小时执行一次,如何实现
答案:2 悬赏:20
解决时间 2021-02-14 19:45
- 提问者网友:写不出迷人情诗
- 2021-02-14 16:04
linux 新手提问,我有一段程序,test.py,想让linux每隔6小时执行一次,如何实现
最佳答案
- 二级知识专家网友:迷人小乖乖
- 2021-02-14 17:35
我也来补充下,除了楼上提出的crontab外,还可以使用python自带的定时任务库sched
使用crontab不用更改代码,到点执行
但是如果是sched库,你得再添加代码
import time
import sched
schedule = sched.scheduler(time.time, time.sleep)
def recycle_eval(delay=6*60*60):#默认定时6小时执行
schedule.enter(delay, 0, recycle_eval, (delay,))
#此处添加你要执行的代码
if __name__ == '__main__':
schedule.enter(2, 0, recycle_eval, (,))
schedule.run() 常驻后台执行的话用nohup命令执行这个脚本
nohup python /path/to/your/script.py &
使用crontab不用更改代码,到点执行
但是如果是sched库,你得再添加代码
import time
import sched
schedule = sched.scheduler(time.time, time.sleep)
def recycle_eval(delay=6*60*60):#默认定时6小时执行
schedule.enter(delay, 0, recycle_eval, (delay,))
#此处添加你要执行的代码
if __name__ == '__main__':
schedule.enter(2, 0, recycle_eval, (,))
schedule.run() 常驻后台执行的话用nohup命令执行这个脚本
nohup python /path/to/your/script.py &
全部回答
- 1楼网友:萝莉姐姐鹿小北
- 2021-02-14 18:02
一种方式是直接运行python py源文件,方法是先在终端中用cd命令切换到py源文件所在的目录,然后以./文件名的方式运行py源文件(文件名前面加的是一个英文点号和一个英文斜杠,表示在当前目录下运行文件)。但是前提是这个py源文件必须被赋予执行权限,linux系统中只有有执行权限的文件才可以执行,即便是一个二进制文件没有可执行权限也是不能运行的,给文件添加可执行权限的命令是:
chmod a+x 文件路径
还有一种运行python py源文件的方式不需要py源文件有可执行权限,方法是用python命令加py文件名的形式来运行源文件,如果是python 2.x的python源文件,就用python命令执行:python 文件名;如果是python 3的python源文件,就用python3命令执行:python3 文件名。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯