1. 介绍
主要介绍在linux服务器上定时运行python程序,并将运行的结果保存在相应文件中
1.1测试环境
- Python 3.6.8
- pip 9.0.3
版本查看方式:
[root@node-2 ~]# python --version
Python 3.6.8
[root@node-2 ~]# pip --version
pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6)
2. py程序上传及测试
2.1py程序准备
代码为获取时间并打印输出的测试代码,文件名为get_time.py
import datetime
now = datetime.datetime.now()
print(now)
print("======================运行结束========================")
2.2脚本上传到服务器
通过XFTP等方式,将文件上传到服务器相应的路径。
2.3运行测试文件
输入python 文件名 ,查看运行结果
3. shell运行脚本的创建及测试
3.1新建.sh脚本文件
进入文件夹路径,vim新建一个sh后戳文件
[root@node-2 get_time]# vim /root/python-py/get_time/get_time.sh
#!/bin/bash
. /etc/profile
touch /root/python-py/get_time/get_time.log
nohup python /root/python-py/get_time/get_time.py >> /root/python-py/get_time/get_time.log 2>&1 &
3.2为sh脚本赋予可执行权限
[root@node-2 get_time]# chmod u+x /root/python-py/get_time/get_time.sh
赋权前:
赋权后:
3.3测试sh脚本
脚本所在目录下,输入./脚本运行,输入ll看到多了一个日志文件
进入此日志文件查看,可以看到为py程序运行的结果,证明测试成功
4. crontab定时运行
进入crontab,添加定时任务
[root@node-2 get_time]# crontab -e
举例:每天早上 06:30 执行一次sh脚本 ,编辑页面添加下面代码保存退出
30 6 * * * /root/python-py/get_time/get_time.sh