使用 PowerShell,我想要创建一个启动 Python 脚本的新任务:
通过 GUI 任务计划程序以这种方式设置它可以工作,但是在下面的 PowerShell 代码中,我不知道如何指定“添加参数“ 场地:
$action = New-ScheduledTaskAction -Execute "C:\Program Files\Python\Python38\python.exe"
$trigger = New-ScheduledTaskTrigger -Daily -At 5:00am
$trigger.StartBoundary = [DateTime]::Parse($trigger.StartBoundary).ToLocalTime().ToString("s")
$settings = New-ScheduledTaskSettingsSet -ExecutionTimeLimit 0
Register-ScheduledTask -Action $action -Trigger $trigger -Settings $settings -TaskName "Full Computer Backup" -Description "Backs up computer"
我必须对 PowerShell 代码进行哪些更改才能添加参数(在本例中为 python 脚本 [文件] 的路径.py
)?
答案1
使用-Argument
参数New-ScheduledTaskAction
命令。
您可以添加完整路径作为参数的值-Argument
(例如-Argument "<script path value>"
),以将其添加为任务Add arguments (optional)
字段值的值。
电源外壳
$action = New-ScheduledTaskAction -Execute "C:\Program Files\Python\Python38\python.exe" -Argument "C:\Scripts\mypScript.py"
$trigger = New-ScheduledTaskTrigger -Daily -At 5:00am
$trigger.StartBoundary = [DateTime]::Parse($trigger.StartBoundary).ToLocalTime().ToString("s")
$settings = New-ScheduledTaskSettingsSet -ExecutionTimeLimit 0
Register-ScheduledTask -Action $action -Trigger $trigger -Settings $settings -TaskName "Full Computer Backup" -Description "Backs up computer"
支持资源
-
-Argument
指定命令行操作的参数。
答案2
我遇到了同样的问题:Windows Server 2012r2 任务计划程序正在运行 powershell 脚本,而这些脚本又应该启动 python 脚本。Powershell 代码似乎可以运行,但 python 脚本却不能。
附加的 Powershell 参数 -ExecutionPolicy Bypass 对我没有帮助,但将所有脚本所在的文件夹添加到“启动于”字段解决了这个问题。