在linux中,经常有同时处理参数和选项的情况发生,linux标准的处理方式是通过识别特殊的字符将选项和参数区分开,这个特殊的字符便是双破折号(--),它告诉脚本解释器选项的结束及参数的开始位置。
方式: 选项 -- 普通参数
-- :代表选项结束,参数开始
1 #!/bin/bash
2 # extracting options and parameters
3
4 E_BADARGS=65
5
6 if [ -z "$1" ]
7 then
8 echo
9 echo "Usage:`basename $0` options and/or argumensts!"
10 echo
11 exit "$E_BADARGS"
12 fi
13
14 echo
15
16
17 while [ -n "$1" ]
18 do
19 case "$1" in
20 -a) echo "Found the -a option"
21 ;;
22 -b) echo "Fonud the -b option"
23 ;;
24 -c) echo "Found the -c option"
25 ;;
26 --) shift
27 break
28 ;;
29 *) echo "$1 is not a option"
30 ;;
31 esac
32 shift
33 done
34
35
36
37 count=1
38 for param in $@
39 do
40 echo "Parameter #$count: $param"
41 count=$[count + 1]
42 done
43
44 echo
45
46 exit 0
阅读(1267) | 评论(0) | 转发(0) |