如果它尚未运行,我想自动启动一个应用程序(特别是Outlook.exe)。 我想通过Windows 7任务调度程序来做到这一点,这意味着当我尝试在一行上用&replace换行符来执行它时, 这里的解决scheme不起作用。 无论运行还是closures,都会启动Outlook。
tasklist /FI "IMAGENAME eq outlook.exe" 2>NUL | find /I /N "outlook.exe">NUL & if "%ERRORLEVEL%"=="0" "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE"
只是为了快速修复,以便成功打开文件后退出批处理。
我添加了开始“”
cmd.exe /c tasklist /FI "IMAGENAME eq outlook.exe" | find /I /N "outlook.exe" ||start "" "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE"
我发现这个 ,第二个答案给了&和|更多的细节 选项。
这是什么结束了我运行良好: cmd.exe /c tasklist /FI "IMAGENAME eq outlook.exe" | find /I /N "outlook.exe" || "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE"
cmd.exe /c tasklist /FI "IMAGENAME eq outlook.exe" | find /I /N "outlook.exe" || "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE"
更多细节:|| […] command1 || command2用于在||之后运行命令 只有在||之前的命令 失败 。 Cmd.exe运行第一个命令,然后只有在第一个命令未成功完成(接收到大于零的错误代码)时才运行第二个命令。