【发布时间】:2016-01-05 17:02:38
【问题描述】:
如何将批处理文件的输出保存到文本文件中,并且输出也应显示在控制台上。
例如:
@ECHO OFF
ECHO Hello World
@pause
它将在控制台上显示 Hello World
@ECHO OFF
ECHO Hello World >text.txt
@pause
它将Hello World保存到text.txt
我怎样才能让这两者同时发生?
提前致谢
【问题讨论】:
-
是控制台应用程序的新手。如果我的理解有误请见谅。我检查了上面的链接。通过使用链接,我可以将所有日志定向到同一个文件。但是在执行此操作时,控制台上不会出现任何消息。我需要的是控制台应该显示消息,同时控制台上出现的消息应该登录到一个文件中。
-
@user3647205 您应该非常仔细地阅读所有现有问题。 jeb 在 his answer 中解释说,不可能将文本输出到控制台窗口,同时仅使用 Windows 命令处理器重定向到文件。但是 jeb 在他对 JScript/Batch 混合 tee 的回答下方也发表了评论,该 tee 是为此任务编写的。 rojo 再次在此处发布了此解决方案的链接。其他答案还包含各种 tee 解决方案。
-
stackoverflow.com/questions/796476/… 不满足我的要求。它正在将控制台标准输出和/或标准错误定向到日志文件。但是只有在控制台中记录或观看才会发生。stackoverflow.com/questions/11239924/windows-batch-tee-command 指导满足这两种情况。但是当我尝试时它并不一致。有时它会记录并显示消息。但有时它不是针对同一个命令。不知道怎么回事
-
。我的确切目标是从 vba excel 运行批处理文件并等待它完成执行并检查错误日志以查看执行是否成功,然后再继续。我还想查看控制台消息。任何建议都会有所帮助。我正在使用 Wscript 从 vba 运行 bat 文件。
标签: batch-file logging console output