如何自动运行特定目录中的python脚本?

如何自动运行特定目录中的python脚本?

我有一个 Python 脚本,希望每周五下午 5 点运行。
我该如何实现?

我知道我可以通过 cron 来做到这一点。但是,由于我在 Python 脚本中使用了相对文件路径,因此必须与其他文件一起在特定目录中运行。我发现我可以使用管道运算符来实现这一点,但是我找不到示例。

答案1

有多种方法可以实现这一点,我仅列出两种方法:

(1)在您的 Cron Job 中使用 Bash“包装器 Shell 脚本”在下午 5 点执行。
在“包装器脚本”中,首先“cd X”,其中 X 是必要的目录。
然后执行 Python 脚本。它将在目录 X 中运行。

# My Bash Wrapper Script  
cd X # use the necessary Directory here  
python MyPythonScript.py  

(2)在您的 Python 脚本中,导入模块“os”并使用“os.chdir”来更改目录,然后继续执行 Python 脚本。

# My Python Script  
import os  
os.chdir(X) # use necessary Directory here  
# continue with Python Script  
# no other Changes necessary  

这两种方式都非常好用。

答案2

您可以在运行脚本之前直接进入该目录。

0 17 * * Fri cd /path/to/dir && python myscript.py

无需包装。

相关内容