【问题标题】:Unable to pause the running batch file for waiting user input intermediately无法暂停正在运行的批处理文件以在中间等待用户输入
【发布时间】:2012-08-19 19:15:07
【问题描述】:

我无法暂停正在运行的批处理文件以在中间询问用户输入。我尝试了PAUSESET /P aaa="Press enter to exit" 之类的命令以及以下命令,但没有任何结果

@ECHO OFF

SET /p aaa="Press enter to exit"

ECHO you typed %aaa%

PAUSE

我的批处理文件在内部调用另一个批处理来构建基线根目录下的所有 Visual Studio 项目。

其中一个项目构建失败,最后它以 BUILD FAILED 的形式将“1”返回给主批处理文件处理器。这会立即终止 MS DOS 控制台,而不是等待用户输入。

我无法看到带有最终结果的 MS DOS 控制台窗口。

有多个步骤可以查看最终结果(将执行输出写入文本文件,如 C:\CurrentApp\MyBuild>ABC.bat MyApp.New.BUILD > output.txt)但 我希望在 MS DOS 控制台屏幕本身中看到闪烁的光标等待任何用户输入键

我的批处理文件如下所示:

cd C:\CurrentApp\MyBuild

ABC.bat MyApp.New.BUILD 

SET /p aaa="Press enter key to exit"

PAUSE

@ECHO OFF

SET /p aaa="Press enter key to exit"

ECHO you typed %aaa%

PAUSE

【问题讨论】:

    标签: batch-file dos prompt


    【解决方案1】:

    您必须致电第二批:call ABC.bat MyApp.New.BUILD。否则控制将传递给 ABC.bat 但永远不会返回,因此您的 pause 永远不会执行。您可能会将其视为 ABC.bat 覆盖您当前的批处理内容,然后自行执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-08
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 1970-01-01
      • 1970-01-01
      • 2019-12-02
      • 1970-01-01
      相关资源
      最近更新 更多