我正在尝试为Mac OSX Mountain Lion (10.8.2)编写一个shell脚本。然而,无论我做什么尝试,我都不能让switch语句工作。他是脚本的一个非常简化的版本:
#!/bin/bash
while getopts "ei" opt; do
case $opt in
e)
echo "Got option e"
;;
i)
echo "Got option i"
;;
\?)
echo "Invalid option: -$opt"
;;
esac
done
无论我尝试什么,我都得不到任何输出。有什么想法吗?我以前也做过这样的脚本。
发布于 2012-11-16 17:09:08
您可能错误地传递了选项,不要忘记-
script.sh -e
注意:你也应该在一个无效的选项后退出:
\?)
echo "Invalid option: -$opt"
exit 1
;;
发布于 2012-11-16 17:06:18
尝试替换
\?)
echo "Invalid option: -$opt"
;;
通过以下方式:
*)
echo "Invalid option: -$opt"
;;
https://stackoverflow.com/questions/13421137
复制相似问题