我有一个包含多个命令的批处理文件:
XCOPY C:\ File_path C:\ Destination
RENAME C:\ File_path New_name
DEL C:\ File_path
我需要他们在同一个文本文件中写输出。通过这种方式,在进程结束时,我有txt文件包含所有程序,我可以检查是否所有内容都已正确完成。 我在每个命令/步骤后尝试使用以下命令:
命令1> output.txt 2>& 1
但它重写了该文件。它不会保留所有步骤的输出,而只保留最后一步。我该怎么做? 感谢
答案 0 :(得分:2)
根据MS,您可能应该使用“追加”运算符 - >>
。
这是文章: https://technet.microsoft.com/en-us/library/bb490982.aspx
答案 1 :(得分:2)
使用追加运算符。它会将您的输出附加到现有文件。而不是覆盖它。
command 1 >> output.txt 2>&1
答案 2 :(得分:2)
批处理文件内部,按命令命令
> output.txt 2>&1 xcopy ...
>> output.txt 2>&1 rename ...
>> output.txt 2>&1 del ...
>
会覆盖/创建文本文件,>>
会附加到
或者,在块中包装命令
> output.txt 2>&1 (
xcopy ...
rename ...
del ...
)
或者,外部批处理文件
myBatchFile.cmd > output.txt 2>&1
答案 3 :(得分:1)
如果要附加到.txt文件,则应使用>>
代替>