比方说在一个batch file中,我想asynchronous执行myCommand (而不是等待它完成)。 而且我不想在新的控制台窗口中执行myCommand 。
同时,我想将myCommand的输出redirect到output.txt
所以在batch file中,如果我写
START myCommand > output.txt
output.txt将是空的,我会看到一个新的窗口。
如果我写
myCommand > output.txt
那么我不能asynchronous执行它。
有什么办法可以达到这三个要求? (asynchronous,没有新的窗口,redirect输出)
谢谢!
我还没有完全测试,但我认为这可能工作:
start /b "" myCommand >output.txt
我相信这两个表单工作正常 – 唯一的区别是如果标准错误也被重定向,并且START无法启动myCommand。
重定向START:myCommand和START输出都被重定向到文件。
start /b "" myCommand >output.txt >2&1
仅重定向myCommand:只有myCommand输出被重定向。 任何START错误信息都会出现在屏幕上。 请注意,我选择了跳过重定向而不是使用像jeb这样的引号 。
start /b "" myCommand ^>output.txt ^>2^&1
几乎像dbenhams回答,但你需要强制重定向到新的线程,而不是start
命令。
start "myTitle" "myCommand > output.txt"