如果没有错误,请关闭 xterm -e 命令



我有以下 shell 脚本来打开 xterm 窗口并安装存储库。

#!/bin/bash
REPO_NAME=$1
REPO_DIR=$2
REPO_URL=$3
REPO_BRANCH=$4
CLONE="git clone --recursive $REPO_URL $REPO_NAME"
DIR="cd $REPO_DIR"
CHECKOUT="git checkout $REPO_BRANCH"
COMMAND="$CLONE && $DIR && $CHECKOUT"
xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND"

我想做的是关闭 xterm,如果运行没有错误$COMMAND。如果出现错误,我想保持窗口打开,我该怎么做?

我知道 -hold 参数,但即使$COMMAND通过,这也会使窗口保持打开状态。我只希望它在失败时打开

我建议:

xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read"

xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read -p 'Press return to close window'"
您可以使用

$? 变量获取上一个程序的退出状态。大多数程序在成功时返回 0 作为退出代码。您可以使用简单的 if 构造对其进行测试。

最新更新