如果进程没有运行,启动Windows命令行

如果进程没有运行,启动Windows命令行

问题描述:

我想自动启动应用程序(特别是Outlook.exe),如果它尚未运行。我想通过Windows 7任务调度程序执行此操作,这意味着解决方案here在我试图通过用&替换换行符而在一行上执行时不起作用。无论它运行还是关闭,它都会启动Outlook。如果进程没有运行,启动Windows命令行

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"

我发现this,其中第二个答案给的&和更详细|选项。

这是结束了对我来说运行良好:cmd.exe /c tasklist /FI "IMAGENAME eq outlook.exe" | find /I /N "outlook.exe" || "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE"

更多细节: || [...] command1 ||命令2 用于在||之后运行命令只有当命令在||之前时,才可以使用失败。 Cmd.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"