批量重定向到两个位置

时间:2011-03-15 18:48:42

标签: windows batch-file

我一直遇到麻烦,将批处理文件重定向到日志文件,并将其显示在命令控制台中。

甚至可以使用Windows批处理,或者我是否必须使用一个简单的程序来拦截stdout并将流写入文件和stdout?

1 个答案:

答案 0 :(得分:3)

我认为你不能只使用内置工具(正确),你可能需要使用tee实用程序,如Win32 GNU端口(this或{{3 }}或this

修改 您当然可以使用FOR batch命令,但输出不是实时的,您必须等待命令完成:

@echo off
setlocal ENABLEEXTENSIONS
goto main

:TEE
FOR /F "tokens=*" %%A IN ('%~2') DO (
    >>"%~1" echo.%%A
    echo.%%A
)
goto :EOF

:main
call :TEE "%temp%\log.txt" "ping -n 2 localhost"