| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 服务器上运行python的定时任务 -> 正文阅读 |
|
[系统运维]服务器上运行python的定时任务 |
?前情提要:我需要在服务器上运行一个python任务,需要每天生成虚拟的数据,一开始我只写了生成的A.py文件,后来因为这是一个定时任务,所以又建了一个定时调用A的B.py文件。 具体操作流程首先我尝试了Linux系统的nohup命令,想利用它一直在后台运行B文件。但是它存在一个问题,就是当我关闭命令窗口,nohup运行的定时任务也就停了,后面也找了许多说如何使它保持运行的方法,但一直都不见效。 然后我经理告诉我可以用Linux的crontab命令,这个命令可以直接设置“定时+运行指令”。我先上菜鸟教程看了一下命令的用法,基本熟悉了一下觉得确实很方便。 直接上手,首先查看crontab里有没有运行的命令:
空空如也,我可以放心大胆的操作了。进入crontab的编辑界面(其实前面的crontab -l操作就是把编辑界面的内容展示出来):
如果从来没有用过此命令,初始化的编辑界面会显示一大堆的说明内容,我嫌他碍事及直接删掉了,所以这部分没有截图。在空空的编辑界面写上一个测试定时任务:
这些*的意思可以在菜鸟里看到,我就不赘述了。这个句子的意思是每一秒都执行 进入正题中间出现了挺多问题的,我先把我最终的处理方法说一下,遇到的问题在后面讲。
它表示每天9:00运行
脚本中的第一行是不能省略的,省略之后我的不运行。 我遇到的问题1. A.py的运行需要在我创建的虚拟环境下这是遇到的最大的问题,我花了一上午时间弄它。前期我已经配好了该文件所要求的虚拟环境,存储在
但理应创建的文件却没有创建,我在想一定是没有运行py文件,但我的py文件在服务器上手动跑过几次都没有问题,所以我有理由认为是环境没有弄好。为了检验是否是环境的问题,我先尝试着打印我目前的环境,暂时不执行py文件,所以先修改
依次操作Ctrl+O,Ctrl+M,Ctrl+X保存crontab。
显示的
这时我直接在终端查看当前没有激活虚拟环境的环境变量:
展示的结果与上面的环境变量一致,这时我们能够确定是因为环境变量的原因导致py文件无法运行。于是我打算先激活虚拟环境后看看环境变量:
终端展示:
经过对比可知,激活虚拟环境后的环境变量和激活之前的相比,前面多出了 2.
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 9:56:59- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |