1: #!/bin/bash
   2:  
       3: usage()
       4: {
    5: echo "Usage:"
6: echo -e "\t-a\t val "
7: echo -e "\t-b\t val"
   8: }
    9: t1=""
10: t2=""
11: t3=""
12: while getopts "a:b:c:d:e:f:g:h" opt;do
13: case $opt in
  14:    a ) t1=$OPTARG;echo $t1;;
      15:    b ) t2=$OPTARG;echo $t2;;
      16:    c ) t3=$OPTARG;echo $t3;;
      17:    h ) usage;exit 0;; 
      18:  esac
      19: done
./getopt_test.sh –h 结果如下
./getopt_test.sh -a 33 -b "This is a test"
./getopt_test.sh -a
从上面的示例看出,getopts 用来获取命令行的参数。如果选项字符串中的字符后面带有“:”(冒号),则预期此选项将带有参数。当选项需要选项参数时,getopts 命令就将其置于变量 OPTARG 中。
对于以冒号的必须跟值,没有将提示错误。
同时注意,后面是两个分号结束“;;”
                    
                


                
            
        
浙公网安备 33010602011771号