Shell编程之getopts指定变量取值
有必要在脚本中指定命令行选项取值。getopts提供了一种方式,即在option_string中将一个冒号放在选项后,例如:
getopts abcsd: OPTION
其中abcs可以不加实际参数值传递,而选项d必须要带参数,变量OPTARG保存该值,变量OPTIND则是保存存储原$*中下一个在处理的元素位置。
#!/bin/sh
ALL=false
HELP=false
FILE=false
VERBOSE=false
COPIES=0
while getopts ":ahfv:c" OPTION
do
case $OPTION in
a) ALL=true
echo "ALL is $ALL"
;;
h)HELP=true
echo "HELP is $HELP"
;;
f)FILE=true
echo "FILE is $FILE"
;;
v)VERBOSE=true
echo "VERBOSE is $VERBOSE"
;;
c)COPIES=$OPTARG
echo "COPIES is $OPTARG"
echo $OPTARG
;;
\?) #usage statement
echo "`basename $0` -[a h f v] -[c value] file" >&2
exit 1
;;
esac
done
补充:综合编程 , 其他综合 ,