【发布时间】:2014-12-11 14:24:05
【问题描述】:
我正在尝试使用 SCHTASKS 在 Windows 上创建计划任务。 参数包括单引号。如果我手动创建任务,它可以工作。 在 Windows 任务计划程序 GUI 中,“详细信息”(在操作选项卡中)显示如下:
powershell (New-Object System.Net.WebClient).DownloadString ('http://mywebserver/myscript.ps1\') | powershell.exe -noprofile -
但是,当我输入我的 SCHTASKS 命令时...
schtasks.exe /Create /TN "My Task" /TR "powershell (New-Object System.Net.WebClient).DownloadString ('http://mywebserver/myscript.ps1\') | powershell.exe -noprofile -" /SC MINUTE /mo 60 /RL HIGHEST
然后这会出现在 GUI 中(注意在第一个实例中将单引号解释为双引号,而不是在第二个实例中:
powershell (New-Object System.Net.WebClient).DownloadString ("http://mywebserver/myscript.ps1\') | powershell.exe -noprofile -
我尝试过转义它等(这对双引号有效,但对单引号无效)但似乎无法弄清楚..?!
非常感谢您的任何建议。
【问题讨论】:
-
问题出在
schtasks.exe运行时库命令参数解析中。可能没有任何方法可以从命令行执行此操作。尝试改用task scheduler API。
标签: windows escaping quotes windows-task-scheduler