如果没有错误则关闭 xterm -e 命令
Close xterm -e command if no error
我有以下 shell 脚本来打开 xterm window 并安装 repo。
#!/bin/bash
REPO_NAME=
REPO_DIR=
REPO_URL=
REPO_BRANCH=
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"
如果 $COMMAND 运行没有错误,我想做的是关闭 xterm。如果出现错误我想让 window 保持打开状态,我该怎么做?
我知道 -hold 参数,但是即使 $COMMAND 通过,这也会使 window 保持打开状态。我只希望它在失败时打开
可以使用$?
变量获取上一个程序的退出状态。大多数程序 return 0 作为成功的退出代码。你可以用一个简单的 if 构造来测试它。
我建议:
xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read"
或
xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read -p 'Press return to close window'"
我有以下 shell 脚本来打开 xterm window 并安装 repo。
#!/bin/bash
REPO_NAME=
REPO_DIR=
REPO_URL=
REPO_BRANCH=
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"
如果 $COMMAND 运行没有错误,我想做的是关闭 xterm。如果出现错误我想让 window 保持打开状态,我该怎么做?
我知道 -hold 参数,但是即使 $COMMAND 通过,这也会使 window 保持打开状态。我只希望它在失败时打开
可以使用$?
变量获取上一个程序的退出状态。大多数程序 return 0 作为成功的退出代码。你可以用一个简单的 if 构造来测试它。
我建议:
xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read"
或
xterm -T $REPO_DIR -geometry 90x30 -e "$COMMAND || read -p 'Press return to close window'"