假设我正在调用这样的父批处理文件
call parent.bat >Log.txt
在 parent.bat 中我调用其他批处理文件,而这些批处理文件本身又调用其他 bath 文件。
现在发生的情况是,从 parent.bat 内部启动的批处理文件在控制台窗口上显示其输出,而不会登录到 Log.txt。
有没有办法强制启动的所有子批处理文件登录到 Log.txt?
答案1
尝试“call file1.bat >> log.txt 2>&1”
双箭头很重要,因为它表示追加而不是覆盖文件 - 否则您只会获得最后一个文件的结果。 2>&1 将“STDERR”重定向到“STDOUT”
答案2
通过一些实验,我无法模拟您的情况。我只是怀疑您的一些消息是否是 stderr。如果是,请尝试 c:> call parent.bat >log.txt 2>&1