我正在制作一个python程序,它将分配一个任务给任务调度程序(在Windows上),以便在特定时间运行一次命令。
我有一个命令,比如command1 = "C:WindowsSystem32calc.exe"
,我有一个任务名,比如cmd_name = "calculator"
现在,我传入这两个变量os.system(r'SchTasks /Create /SC ONCE /TN '+cmd_name+' /TR '+cmd+' /ST 17:28')
但是,任务没有被调度。
我已经提到了这个问题,这个和这个链接,但是所有这些都没有帮助我,因为我没有在os.system()中传递一个字符串作为一个整体,而是在我的命令中有一个额外的r。
如何传递这些变量?如果有人建议在特定时间安排任务,我也可以尝试任何其他方法(使用python)。
我用subprocess
解决了这个问题
import os
import subprocess
command1 = "C:WindowsSystem32calc.exe"
cmd_name = "calculator"
cmd = 'SchTasks /Create /SC ONCE /TN "'+cmd_name+'" /TR "'+command1+'" /ST 18:24'
subprocess.run(cmd)