Board logo

标题: [其他] 任务计划中要运行的程序路径包空格如何处理? [打印本页]

作者: hzusb    时间: 2013-12-2 14:16     标题: 任务计划中要运行的程序路径包空格如何处理?

我的代码(比如):
schtasks /f /create /tn "Start IE" /tr "%ProgramFiles%\Internet Explorer\iexplore.exe" /sc MINUTE /mo 30
结果如图:

按微软说明,将路径改为  \"。。。。 \"  却提示参数错误?
作者: PowerShell    时间: 2013-12-2 14:50

本帖最后由 PowerShell 于 2013-12-2 15:48 编辑

貌似空格要处理,或者转义下,-------实际上我一直认为这是powershell的优势,bat的悲哀.

对于此贴,我现在暂时mark一下,
看来 我应该写一篇帖子,powershell单双引号之妙!   http://www.bathome.net/thread-27666-1-1.html
你可以在bat中嵌入powershell语句或者脚本来实现你这个,或者光用powershell来写脚本.

另外对于高版本win,powershell自带管理命令
PS C:\Users\user001> get-command * -Module ScheduledTasks

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Function        Disable-ScheduledTask                              ScheduledTasks
Function        Enable-ScheduledTask                               ScheduledTasks
Function        Export-ScheduledTask                               ScheduledTasks
Function        Get-ClusteredScheduledTask                         ScheduledTasks
Function        Get-ScheduledTask                                  ScheduledTasks
Function        Get-ScheduledTaskInfo                              ScheduledTasks
Function        New-ScheduledTask                                  ScheduledTasks
Function        New-ScheduledTaskAction                            ScheduledTasks
Function        New-ScheduledTaskPrincipal                         ScheduledTasks
Function        New-ScheduledTaskSettingsSet                       ScheduledTasks
Function        New-ScheduledTaskTrigger                           ScheduledTasks
Function        Register-ClusteredScheduledTask                    ScheduledTasks
Function        Register-ScheduledTask                             ScheduledTasks
Function        Set-ClusteredScheduledTask                         ScheduledTasks
Function        Set-ScheduledTask                                  ScheduledTasks
Function        Start-ScheduledTask                                ScheduledTasks
Function        Stop-ScheduledTask                                 ScheduledTasks
Function        Unregister-ClusteredScheduledTask                  ScheduledTasks
Function        Unregister-ScheduledTask                           ScheduledTasks

get-help New-ScheduledTask -online     -----此命令将转到下列网址
http://technet.microsoft.com/lib ... 5-ba8a-db589bcef699(v=wps.630).aspx
作者: hzusb    时间: 2013-12-3 20:54

谢谢,powershell根本不会用,bat自身解决不了吗?
作者: DAIC    时间: 2013-12-4 09:10

什么操作系统?
你这个命令是直接在CMD窗口里面执行的?还是放在一个bat文件里面执行的?
作者: hzusb    时间: 2013-12-4 12:22

回复 4# DAIC


    7 x64,双击bat运行的
作者: DAIC    时间: 2013-12-4 17:02

回复 5# hzusb
  1. schtasks /f /create /tn "Start IE" /tr "\"%ProgramFiles%\Internet Explorer\iexplore.exe\"" /sc MINUTE /mo 30
复制代码

作者: hzusb    时间: 2013-12-4 22:38

回复 6# DAIC


    你厉害啊,果然可以。谢谢谢谢!
作者: PowerShell    时间: 2013-12-5 13:58

powershell.exe 中,可以用【单引号对】来当括弧,括带双引号的命令,扩带双引号的字符串,如6楼的对应powershell命令如下:
  1. schtasks /f /create /tn "Start IE" /tr '"%ProgramFiles%\Internet Explorer\iexplore.exe"' /sc MINUTE /mo 30
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2