抑制Windows命令行中的PAUSE命令

3

我被委托整合我们团队的构建流程,包括构建服务器、CI等。

我们项目的结构是每个子团队负责其自己代码库的开发。

随着时间的推移,每个团队通常会根据其部署要求创建自己的python/sh/bat/Wix。我被委托将所有构建合并到一个主要的Team City系统中。

问题是我发现许多构建脚本(bat文件)包含UI提示和暂停等命令。

有没有人知道在脚本执行之前/期间可能抑制这些命令的方法。

我考虑预处理批处理文件并删除/REM掉暂停,但这不是理想的解决方案。因为有大约350个单独的项目分布在大约35个HG存储库中(它们本身分布在4个城市中)。

理想情况下,我们不希望进行预构建清理。

有人知道任何超级神奇的技巧来做到这一点吗?还是需要更改每个构建文件?

1个回答

12
您可以通过将输入重定向到nul来禁用输入:<nul 你的脚本.bat。这将有效地禁用任何PAUSE命令,但也会禁用任何提示用户输入的SET /P或其他命令。
如果您为调用其他脚本的主批处理脚本禁用了输入,则子脚本将继承被禁用的输入。

更常见的等效方式是 yourScrpt.bat <nul。如果考虑使用 SET /P 等命令,则加1分。 - Tom Blodget

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接