需要案例输出帮助(BASH)

时间:2015-10-15 07:21:55

标签: bash

我有一个简单的案例,如

case "$1" in
    -b*) myfunction exit 0;;
    -B*) echo "Invalid!" >&2 exit 1;;
esac

想要什么基本上是当用户输入参数使用" b "时,它会从myfunction中执行一些操作。否则,如果用户使用" B "输入,则会输出错误并退出程序。

然而,真正发生的是当用户输入" B "时,它会打印

Invalid! exit 1                 

而不是

Invalid!

此外,它的退出值为" 0 "而不是" 1 "。有谁知道我做错了哪一部分?

1 个答案:

答案 0 :(得分:2)

替换你的剧本

echo "Invalid!" >&2 exit 1

通过

echo "Invalid!" >&2; exit 1