我在将批处理文件重定向到日志文件以及将其显示在命令控制台中时遇到了一些问题。
这对于Windows批处理来说是可能的吗?还是我必须求助于一个简单的程序来拦截标准输出并将流写入文件和标准输出?
最佳答案
我认为仅使用内置工具无法(正确)执行此操作,您可能需要使用 tee实用程序,例如 Win32 GNU 端口( this 或 this )或 mtee
编辑: 您当然可以使用 FOR 批处理命令,但输出不是实时的,您必须等待命令完成:
@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"
关于windows - 批量重定向到两个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5316498/