Batch file 如何在exe终止后重定向其输出?

Batch file 如何在exe终止后重定向其输出?,batch-file,redirect,command-line,dos,Batch File,Redirect,Command Line,Dos,我正在尝试将批处理文件中执行的exe文件的输出保存为文本文件。 我试过以下几种方法,但都不管用 这不起作用,因为当应用程序运行且创建的文本文件为空时,我返回命令提示符 C:\>myexec.exe>mytext.txt C:\>\u C:\>状态:通过 这些也不起作用。我得到一个空文本文件,没有输出 C:\>start/wait myexec.exe>mytext.txt C:\>调用start/wait myexec.exe>mytext.txt 这至少为我提供了一个输出: C:\>st

我正在尝试将批处理文件中执行的exe文件的输出保存为文本文件。 我试过以下几种方法,但都不管用

这不起作用,因为当应用程序运行且创建的文本文件为空时,我返回命令提示符

C:\>myexec.exe>mytext.txt

C:\>\u

C:\>状态:通过

这些也不起作用。我得到一个空文本文件,没有输出

C:\>start/wait myexec.exe>mytext.txt

C:\>调用start/wait myexec.exe>mytext.txt

这至少为我提供了一个输出:

C:\>start /wait myexec.exe
Status Passed

请尝试
Application.exe>&file.txt
。这将同时将标准输出和错误流输出到您的文件。

我遇到了同样的问题,并解决了它,如下所示:

bat文件内容

START/wait cmd/c“F:\MyInstaller\installer.exe>log.txt”

echo在上一个操作完成后将记录此操作>log1.txt

使用/B操作符

这将导致输出被重定向


start/B/wait myexec.exe>mytext.txt

重定向操作符将输出或输入从一个指定句柄复制到另一个指定句柄。例如,要将
dir
输出发送到
File.txt
,并将错误输出发送到
File.txt
,请键入:

dir>c:\file.txt 2>&1

它是哪个应用程序?它是NI测试台的用户界面,名为TestExec.exe,允许我从命令行执行自动测试台测试序列。我正在尝试设置一个测试自动化框架,因此需要在执行测试后恢复状态。与其读取文本输出,不如测试
ERRORLEVEL
?大多数命令行应用程序都使用它,因为它很容易在批处理文件中进行测试,并且可以方便地自动使用
如果%%ERRORLEVEL%%1
比比较特定文本的文件内容要好得多。谢谢Ken,我将检查ERRORLEVEL。我尝试过了,但仍然在控制台上获得输出,而不是文件。应用程序完成运行后,不会将输出重定向到文件。