在Python中,您可以使用subprocess
模块来执行系统命令,包括at
指令
import subprocess def schedule_at_command(command, time): # 将时间字符串转换为at命令所需的格式 at_time = time.replace(" ", "T") + "+00:00" # 使用at命令调度任务 try: subprocess.run(["at", time, "-s", command], check=True) print(f"任务已安排在 {time}") except subprocess.CalledProcessError as e: print(f"调度任务失败: {e}") # 示例用法 command = "echo 'Hello, World!'" time = "2022-10-31 12:34:56" schedule_at_command(command, time)
在这个示例中,我们定义了一个名为schedule_at_command
的函数,它接受一个命令和一个时间字符串作为参数。我们将时间字符串转换为at
命令所需的格式,然后使用subprocess.run()
执行at
命令。如果任务成功调度,我们将打印一条确认消息;否则,我们将打印一条错误消息。
请注意,这个示例假设您的系统已安装了at
命令。在某些Linux发行版中,您可能需要先安装at
工具包。例如,在Debian和Ubuntu上,您可以使用以下命令安装:
sudo apt-get install at