终端仿真器在执行后自动关闭,但如果执行期间出现错误则保持打开状态

终端仿真器在执行后自动关闭,但如果执行期间出现错误则保持打开状态

我有一个自动构建脚本;它使用一个 makefile,根据目标启动不同的 ant 脚本。

我使用 xterm 启动它(我在桌面上有一个快捷方式)。它工作正常,但如果我想检查执行是否成功,我无法自动关闭终端。

是否有一个终端模拟器在执行过程中出现错误时不会自动关闭?

答案1

您似乎打开一个终端来运行一个命令并关闭终端。这是 Windows 世界之外的一个非常不寻常的工作流程。通常的工作流程是永久打开终端,并在需要时在其中运行命令。或者,当命令是构建命令时,在 IDE 中工作并让它调用构建过程。

如果您坚持每次都创建一个新终端(这是一个坏主意,因为这会使之前构建的消息立即不可用),您可以通过插入一个检查返回状态的 shell 代码片段来使终端在出现错误时等待,然后等待如果有错误则用于输入。

xterm -e sh -c 'ant mytarget || read line'

如果构建过程成功完成,终端窗口将立即关闭。如果构建过程失败,则按 后终端窗口将关闭Enter

答案2

所以不要放在exit脚本末尾和/或检查返回代码......

答案3

我认为 Jiri 的意思是您应该使用 xterm,而不使用 -hold,并将构建脚本更改为仅在成功完成时退出。如果出现错误,请停止构建脚本并等待用户按下按键。如果您的构建脚本是 bash 脚本,则只需使用 read 语句:

read unused_var

相关内容