我是新来的SO用户。我被分配任务创建一个Windows任务计划,使用我们的Python API将一个.BAT文件推送到我们的远程PC群中运行。
我在传递参数给schtask.exe
时遇到了问题。
以下是代码:
import subprocess
path = "c:\windows\System32\schtasks.exe"
subprocess.Popen([path, "schtasks /create /SC ONLOGON /TN 'Update_Automation_Beta' /TR 'C:\test\run_admin.bat'"], shell = True)
注意:目前该任务仅为测试任务,我正在尝试解决它。同时,如果直接输入到命令提示符窗口中,它将起作用,不需要删除引号等。
schtasks
。而且不要使用shell=True
,因为没有理由使用cmd.exe运行此命令。 - Eryk Sunshlex.split
能够正常工作,则命令行必须已经正确引用。在 Windows 上,Popen
必须将列表重建为一个字符串以供CreateProcess
使用,因此只需将命令作为字符串传递即可。 - Eryk Sun