Redirect 批处理文件:如何重定向从新命令提示符执行的应用程序输出

Redirect 批处理文件:如何重定向从新命令提示符执行的应用程序输出,redirect,batch-file,Redirect,Batch File,我正在编写一个批处理文件,它将调用applicationXYZ.exe来更新固件,然后调用其他应用程序 调用时,应用程序XYZ.exe将在新的控制台窗口中打开、执行,然后提示用户输入。一旦用户提供输入,它将返回到原始控制台窗口并执行其余的操作 我有两个问题: 1退出时,应用程序提示用户按任意键。问题是我需要它在没有任何用户输入的情况下退出。是否可以从批处理文件中提供输入。 注意:此应用程序在另一个控制台中运行,批处理文件在另一个控制台中执行 2如何重定向应用程序的输出。 注意:应用程序选项>xx

我正在编写一个批处理文件,它将调用applicationXYZ.exe来更新固件,然后调用其他应用程序

调用时,应用程序XYZ.exe将在新的控制台窗口中打开、执行,然后提示用户输入。一旦用户提供输入,它将返回到原始控制台窗口并执行其余的操作

我有两个问题:

1退出时,应用程序提示用户按任意键。问题是我需要它在没有任何用户输入的情况下退出。是否可以从批处理文件中提供输入。 注意:此应用程序在另一个控制台中运行,批处理文件在另一个控制台中执行

2如何重定向应用程序的输出。
注意:应用程序选项>xxx.txt文件不起作用。我希望这是由于应用程序在另一个控制台中运行。

您确定要直接调用可执行文件吗?听起来您可能正在调用一个批处理脚本,该脚本通过START/WAIT启动可执行文件,然后是PAUSE。应用程序xyz本身在执行结束时包含一个暂停。这是否正确?也许您可以发布批处理文件的相关部分,显示如何调用xyz.exe。如果>xxx.txt不起作用,则是因为应用程序没有将其输出定向到STDOUT。如果它使用的是STDERR,那么您可以通过使用>xxx.txt 2>&1来捕获它,这将把STDOUT和STDERR都发送到xxx.txt。如果无法捕获,则他们可能直接更新控制台,而不是使用标准I/O例程,在这种情况下,您将无法使用>或2>&1重定向输出。@Manimehalai有一种方法可以将输入管道化到您调用的程序中。我相信这对你有用。在这篇文章中看到答案:然而,你必须1。让它把所有东西都发送到程序中,甚至是用户提示的东西。让它等待定时器发送输入以绕过程序暂停。