我的代码:
#options() {
while getopts s:v:h opt; do
case ${opt} in
s)
echo -s passed with ${OPTARG}
;;
v)
echo -v passed with ${OPTARG}
;;
h)
usage
exit
;;
*)
usage
exit
;;
esac
done
#}
#options
如果我在脚本中调用它,一切都按预期工作。但是一旦我删除了哈希并使代码功能化,我就永远不会进入案例标记。
有人可以解释这种行为吗?
编辑:
以下是我最新的见解。
shellcripts中有三个可能的变量范围: