±àдһ¸öshell½Å±¾£¬×öһЩÊ£»¸Ä½øÕâ¸ö½Å±¾£¬¸üºÃ×öÕâ¼þÊ£»ÔٸĽøÕâ¸ö½Å±¾£¬°ï×Ô¼º×öЩÆäËûµÄÊÂÇ飻ÔٸĽøÕâ¸ö½Å±¾°ïÖúÆäËûÈË×öһЩÊÂ......
¼òµ¥µÄ½Å±¾´¦Àí£¬Ò»°ãʹÓñäÁ¿$0 $1 $2 ...¾Í¿ÉÒÔÒÀ´Î»ñµÃÈ«²¿²ÎÊý£¬»¹¿ÉÒÔͨ¹ý$#»ñµÃÕâ¸ö½Å±¾Ò»¹²ÓжàÉÙ¸ö²ÎÊý¡£Èç¹ûÄãÐèÒª´¦ÀíµÄÇé¿ö£¨»òÕß·ÖÖ§£©¸ü¶àµÄʱºò£¬Õâ¸ö·½·¨¾Í²»´ÕЧÁË£¬Õâʱºò£¬¾Í¿ÉÒÔ¿¼ÂÇʹÓÃgetoptsÁË£¨man getopts£©¡£
ÕâÀォͨ¹ýÒ»¸öʾÀýÀ´½éÉÜgetoptsµÄÓ÷¨¡£
ÏÂÃæµÄ´úÂ룬¿ÉÒÔͨ¹ý"./sample -d 5"µÄ·½Ê½»ñÈ¡²ÎÊý£º
vi sample.sh
#!/bin/sh
day=7
#default value
while getopts ":d:" opt;
do case $opt in
d)
day=$OPTARG
#get the value ;;
?)
echo "How to use: $0 [-d DAY]" >&2
exit 1 ;;
:)
echo "Option -$OPTARG requires an argument." >&2
exit 1 ;;
esac
done
echo $day
ÉÏÃæÀý×ÓÖÐÐèÒª½âÊ͵ÄÊÇÏÂÃæµÄ²¿·Ö£º
ÕâÀµÚÒ»¸öðºÅ±íʾºöÂÔ´íÎó£¨ÀýÈç³öÏÖÁ˲»ÈÏʶµÄ²ÎÊý£©£¬²¢Ôڽű¾ÖÐͨ¹ý::)À´´¦ÀíÕâÑùµÄ´íÎó£»×ÖĸdÔò±íʾ£¬½ÓÊܲÎÊý-d£»dºóÃæµÄðºÅ±íʾ²ÎÊýd½ÓÊÕÖµ£¬¼´¡°-d 7¡±ÕâÑùµÄÐÎʽ£»£¨ÕâÀïopt±äÁ¿£¬¿ÉÒÔÔÚwhileÑ»·ÖÐÒýÓõ±Ç°ÕÒµ½µÄ²ÎÊý£¬ÊÔÊÔÊä³ö$optÊÔÊÔ£©
Èç¹ûÊÇÒªÓкܶà²ÎÊý£¬ÄÇôд·¨¿ÉÄÜÊÇ£º

