我在python开发方面相当绿色但不过学习。 我写了一些python代码,但它们大多是一次性使用,并在命令行运行。我仍然不知道如何自动化和安排我的代码。让我们说:
/tmp
中。 每次我想这样做,我发现自己在做:
$ python getdata.py
$ python converttoxml.py
在shell中,我认为可以编写一个包装脚本和cron。对?如果是这样,在python世界中如何完成?请记住,我们必须包括所有使用的python libraries/
模块。
P.S。使用PyCharm在Linux环境中开发。
答案 0 :(得分:1)
使用crontab -e
按照以下格式添加一行,滚动到底部:
m h dom mon dow command
,即分钟,小时,日期,星期几,命令
所以,如果你想在每小时运行你的命令
* /1 * * * * python path/to/file/getdata.py
如果你希望它只在12运行,那么你就可以
* 12 * * * * python path/to/file/getdata.py
答案 1 :(得分:0)
可以将Python文件视为可执行文件。您只需要使用chmod +x my_file.py
授予他们执行权限,并告诉bash应该使用哪个解释器来解析文件,方法是添加#!/usr/bin/python
作为代码文件的第一行。
完成这两件事后,您可以使用./my_file.py
运行文件,并执行python脚本。
从这一点开始,它就像任何普通的程序一样,可以在cron / systemd中使用/无论你需要什么其他用途。一旦你有一个可用的Python脚本,它应该被视为与你系统上的任何其他可执行文件没有区别 - 在这方面,没有“Python世界”。
就额外的模块而言 - 这应该不是问题,因为Python仍将使用相同的方式来解析库位置。可能需要更新$ PYTHON_PATH以添加库路径 - 但是如果库已正确安装,则对于本地目录中包含的库(仅在Python无法找到它们的情况下),这可能不是问题,您可以添加:
sys.path.apped(os.path.dirname(__file__))
到您脚本的开头。