shorthand 显示消息并在失败时退出的方式是什么

What is a shorthand way of displaying message and exiting on failure

是否有显示消息并在出错时退出的快捷方式?我通常使用这样的行

sudo apt-get install time-machine || exit -1

但是如果我这样添加打印语句,每次都会退出(apt-get会失败,打印echo语句,然后调用exit -1语句) .

sudo apt-get install time-machine || echo "Time Travel is Impossible" ; exit -1

将命令分组以便一次性执行。

sudo apt-get install time-machine || { echo "Time Travel is Impossible" ; exit -1 ; }

最后的分号很重要,大括号周围的空格也很重要;不要忘记他们。

典型的方法是一个函数类似于:

die() {
  echo "$*" >&2       # Write message to stderr
  exit 1              # Exit with failure
}

sudo apt-get install time-machine || die "Time Travel is impossible"

或者当不同的错误需要不同的退出代码时:

die() {
  echo "${*:2}" >&2   # Write params 2+ to stderr
  exit ""           # Exit with first parameter
}

sudo apt-get install time-machine || die 4 "Time Travel is impossible"

PS:请注意退出代码不能为负数:-1 换行到 255