我有以下代码执行并将输出存储到文本文件,然后将输出显示到控制台。
robocopy %TOBEZIPPED% %TEMPDIR% *.* /E > Log.txt & type Log.txt
但由于我正在使用robocopy命令在复制过程中显示进度,我希望它显示为预期,然后将输出(可能是命令的历史记录)存储到文本文件中。
我该怎么办?我已经尝试过google搜索中的doskey / history,但仍无法解决我的问题。
希望有人可以帮助我..提前致谢..
编辑:我搜索了相关问题,但没有找到我想要的相同问题..请注意,在将输出重定向到输出之前,应首先正常显示输出结果(不回显或键入,请参阅robocopy命令)文件..所以就像命令将像往常一样显示,就像命令历史一样 - 执行后,将被重定向到输出文件..答案 0 :(得分:0)
仅适用于Shell:
使用tee:
tee是命令行解释器(shell)中的一个命令,它使用标准流读取标准输入并将其写入标准输出和一个或多个文件,有效地复制其输入。
e.g。
robocopy %TOBEZIPPED% %TEMPDIR% *.* /E | tee -a Log.txt
如果您想在Windows中执行此操作,则需要使用PowerShell http://en.wikipedia.org/wiki/Windows_PowerShell。这将为您提供tee命令,以便在Windows上执行。