![将 cmd 提示符的内容从批处理文件转储到文件中](https://linux22.com/image/1253406/%E5%B0%86%20cmd%20%E6%8F%90%E7%A4%BA%E7%AC%A6%E7%9A%84%E5%86%85%E5%AE%B9%E4%BB%8E%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%E8%BD%AC%E5%82%A8%E5%88%B0%E6%96%87%E4%BB%B6%E4%B8%AD.png)
因此,我有这个批处理文件,它每天早上 7 点运行并在 Windows 命令提示符中执行一些工作。
我还需要此批处理将已完成的 cmd 提示工作的输出保存到文本文件中,以便我可以查看其状态。如果批处理失败,这并不重要,但我需要知道它。
如果我可以将 cmd 提示符的内容打印到文本文件或通过电子邮件向自己发送运行结果,那就太棒了。
答案1
您只需将其添加到运行批处理文件的末尾:> "c:\yourFile.txt"
(或者>> "c:\yourFile.txt"
如果您希望将结果附加到文件而不覆盖)
例如:c:\yourBatchFile.bat >> c:\yourLogFile.txt
答案2
仅供参考...仅使用其他答案中的大于号不会捕获错误输出,只有标准输出......因此,任何错误仍会转到命令行显示而不是日志文件,并且您仍然不会被告知任何故障。
对于 stdout 和 stderr 都需要以下语法:
[batchFilePath] > [logFilePath] 2>&1
答案3
尝试通过在计划命令后放置“>”和文件名来重定向输出,如下所示:
C:\MyBatchFile.bat > 输出.txt
放置两个“>”,如“>>”,将会附加而不是覆盖。