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
。
是否有显示消息并在出错时退出的快捷方式?我通常使用这样的行
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
。