我有一个批处理文件,通常像这样调用:
longjob.cmd >result.txt 2>&1
这工作正常,但脚本在执行过程中更改了目录,将我的 shell 留在该目录中 - 这很麻烦。
有没有办法在子 shell 中运行命令 - 同时仍然允许捕获输出?
我努力了
cmd longjob.cmd >result.txt 2>&1
它只是等待退出命令。
我也尝试过
start longjob.cmd >result.txt 2>&1
它确实运行脚本,但在一个新窗口中,所有输出都发送到该窗口而不是文件。
Try
CMD /C longjob.cmd >result.txt 2>&1
不确定它将如何处理重定向,但 CMD /C 可以让您告诉 CMD 要运行什么,并且它应该在完成后退出。 (CMD /K 允许您告诉它运行某些内容,但完成后仍保留在该位置。)如果在一个控制台窗口中运行,它将重新使用现有的控制台窗口。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)