windows - 批量重定向到两个位置

标签 windows batch-file

我在将批处理文件重定向到日志文件以及将其显示在命令控制台中时遇到了一些问题。

这对于Windows批处理来说是可能的吗?还是我必须求助于一个简单的程序来拦截标准输出并将流写入文件和标准输出?

最佳答案

我认为仅使用内置工具无法(正确)执行此操作,您可能需要使用 tee实用程序,例如 Win32 GNU 端口( thisthis )或 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/

相关文章:

powershell - 我无法再下载我的 iCloud 日历

powershell - 在 PowerShell 或批处理中格式化日志文件

python - 从 Ubuntu 迁移到 Windows——恢复 Vim+Python 工作流程

windows - 如何制作休眠批处理文件?

c# - 使用 C++ 或 C# 打开之前的全局检测文件信息

c++ - 如何在 Visual C++ 中使用 lstrcat 进行连接?

windows - 有没有办法通过 Windows 命令观察文件的 'availability status'?

windows - OpenCV 使用 CMake 在 Windows 上安装 opencv_contrib 模块

c# - 从 bat 文件运行 Java .jar 和 Windows .exe

java - 有人用 Java 进行大型机或 AS/400 批处理吗?