dar*_*een 9 windows cmd batch-file
我正在尝试从批处理文件中运行多个后台进程,并将输出定向到文件.是否可以在Windows中执行此操作?这是我尝试过的,但最终导致启动程序的输出而不是后台进程.
start myapp.exe > myapp.out 2>&1
Run Code Online (Sandbox Code Playgroud)
dbe*_*ham 11
实际上,如果不使用帮助程序批处理文件,这很容易.您只需要通过cmd.exe运行应用程序,并确保转义特殊字符,以便它们传递给cmd.exe.
您可能不希望看到额外的控制台窗口,因此请使用START/B选项.
start /b "" cmd /c myapp.exe ^>myapp.out 2^>^&1
Run Code Online (Sandbox Code Playgroud)
每个STARTed进程必须将其输出定向到唯一文件.多个进程无法共享同一输出文件.
我认为你唯一的机会是为你想要启动的每个exe创建一个批处理文件.在批处理文件中,您可以重定向输出.然后,主批处理文件将"启动"批处理文件,而不是直接执行exe.
您只需要exit在每个批处理文件的末尾包含一个命令:
start_myapp.cmd 包含以下内容:
myapp.exe > myapp.out 2>&1
exit
Run Code Online (Sandbox Code Playgroud)
然后你就可以跑了
start start_myapp.cmd
Run Code Online (Sandbox Code Playgroud)
并且输出将被重定向
| 归档时间: |
|
| 查看次数: |
6313 次 |
| 最近记录: |