【发布时间】:2015-03-10 19:09:52
【问题描述】:
如果我要做这样的事情来处理 bash 中的参数,我将如何检查是否没有参数?它似乎没有转到 *) 案例,但我仍然想在某处放一个使用声明。
while getopts 'ias' flag; do
case "${flag}" in
i) ifl='true' ;;
m) afl='true' ;;
n) sfl='true' ;;
*) error "Invalid option ${flag}" ;;
esac
done
【问题讨论】:
-
在循环之后检查
OPTIND以找到第一个非选项参数,看看这是否是第一个参数?或者,如果没有任何合法的非选项参数,只需在循环前检查$#。 -
@EtanReisner 谢谢,我认为检查 $# 听起来像是我需要的。说清楚点,$#代表选项的个数?