📜  在 Linux 上调度Python脚本(1)

📅  最后修改于: 2023-12-03 14:51:00.714000             🧑  作者: Mango

在 Linux 上调度Python脚本

在 Linux 上,我们可以使用一些工具来调度 Python 脚本,例如 cron 和 systemd。本文将介绍如何使用这些工具来定时运行 Python 脚本。

使用 cron

cron 是一种 Linux 自带的工具,可以定时运行指定的命令或脚本。我们可以使用 cron 来定时运行 Python 脚本,步骤如下:

  1. 打开命令行终端,输入以下命令打开 crontab 编辑器:
crontab -e
  1. 在编辑器中,添加以下内容来设置定时任务:
# 每天 8 点运行 hello.py
0 8 * * * python /path/to/hello.py

这里的 0 8 * * * 表示每天的 8 点运行一次,/path/to/hello.py 指定了要运行的 Python 脚本的路径。

  1. 保存并退出编辑器。

从此,cron 就会按照设定的时间定时运行指定的 Python 脚本了。

使用 systemd

systemd 是 Linux 下的另一个常用的进程管理工具,类似于 Windows 的服务。我们可以使用 systemd 来启动和停止 Python 脚本,并在系统启动时自动运行脚本,步骤如下:

  1. /etc/systemd/system/ 目录下创建一个名为 hello.service 的文件,并输入以下内容:
[Unit]
Description=Hello Service

[Service]
ExecStart=/usr/bin/python /path/to/hello.py

[Install]
WantedBy=multi-user.target

其中,ExecStart 指定了要运行的 Python 脚本的路径。

  1. 输入以下命令,启动服务:
systemctl start hello.service
  1. 如果要开机时自动运行该服务,则输入以下命令:
systemctl enable hello.service

从此,systemd 就会在系统启动时自动运行指定的 Python 脚本了。如果要停止服务,可输入以下命令:

systemctl stop hello.service
总结

在 Linux 上,我们可以使用 cron 和 systemd 等工具来定时运行 Python 脚本。其中,cron 比较简单易用,适合简单的定时任务;而 systemd 则更复杂一些,但功能更加强大,可以进行更多高级的配置。开发者可以根据实际需要选择适合自己的工具来调度 Python 脚本。