Batch file Windows批处理:如何将cmd输出写入文件?
我需要将批处理运行时出现在cmd窗口中的行打印到文本文件中。例如,我有以下批处理脚本:Batch file Windows批处理:如何将cmd输出写入文件?,batch-file,logging,stderr,Batch File,Logging,Stderr,我需要将批处理运行时出现在cmd窗口中的行打印到文本文件中。例如,我有以下批处理脚本: copy D:\aaa.txt D:\bbb.txt 启动批处理文件时,cmd窗口显示以下行(对不起,我的窗口是法语): 我想自动将这两行写入文本文件,以便检查更复杂的批处理文件的执行情况并跟踪错误。将批处理命令的输出重定向到文件log.txt: D:\>copy D:\aaa.txt D:\bbb.txt >log.txt 将输出附加到文件 copy D:\aaa.txt D:\bbb.tx
copy D:\aaa.txt D:\bbb.txt
启动批处理文件时,cmd窗口显示以下行(对不起,我的窗口是法语):
我想自动将这两行写入文本文件,以便检查更复杂的批处理文件的执行情况并跟踪错误。将批处理命令的输出重定向到文件
log.txt
:
D:\>copy D:\aaa.txt D:\bbb.txt >log.txt
将输出附加到文件
copy D:\aaa.txt D:\bbb.txt >>log.txt
请注意,您可能希望取消确认是否覆盖目标文件。使用/Y
选项执行此操作(但要注意风险):
还要注意,发出的命令行不是输出的一部分。使用echo
命令写入:
echo copy /Y D:\aaa.txt D:\bbb.txt >>log.txt
copy /Y D:\aaa.txt D:\bbb.txt >>log.txt
使用,例如:
调用mybatchfile.bat>>logfile.txt
非常感谢@collapsar!你的最后两行确实帮了我大忙。
copy /Y D:\aaa.txt D:\bbb.txt >>log.txt
echo copy /Y D:\aaa.txt D:\bbb.txt >>log.txt
copy /Y D:\aaa.txt D:\bbb.txt >>log.txt