批处理文件记录问题

时间:2013-07-03 18:35:04

标签: logging batch-file

如何在屏幕上获取输出的同时获取批处理文件的日志。

注意我的批处理文件也有几个输入,我尝试了一些但是它没有用,有没有人有一些简单的解决方案?

2 个答案:

答案 0 :(得分:1)

使用TEE技术。

:Tee <Message> <File>
echo(%1
echo(%1>>%2
exit /b 0

像这样使用

call :Tee "This is my Message to display in the log and on screen." "Output.txt"

echo命令

替换call :Tee命令

答案 1 :(得分:0)

set LogFile=somepath\logfile.txt
set logg=^> _^&^& type _^&^&type _^>^>%LogFile%
echo this goes to screen AND file! %logg%

这有点棘手。所以让我们将该行拆分为四个部分:

set logg=      ^> _          ^&type _           ^&type _^>^>%LogFile%

想法是将行打印到临时文件(名为“_”)(第二部分),然后键入该文件的内容到屏幕(第三部分),然后将其键入日志文件(第四部分)。

将所有内容都放在一个变量(第一部分)中,这样就不必为每一行输入那个monsterstring。 (这就是“&gt;”和“&amp;”用“^”转义的原因)

所以每次使用

echo whatever %logg%

它将出现在屏幕上并写入%logfile%

这也适用于命令:

ipconfig %logg%