getopts 可选参数_getopts 方便的做参数和参数选项处理

bash-3.00# ./getopts.sh -a -c 10

1 means your input is a

this mean the value of $OPTARG is 10

bash-3.00# cat getopts.sh

#!/bin/sh

while getopts :abc: name

do

case $name in

a)      aflag=1;echo $aflag means your input is "a"

;;

b)      bflag=1

echo $bflag means your input is "b"

;;

c)      echo this mean the value of '$OPTARG' is $OPTARG

;;

?)     printf "Usage: %s: [-a] [-b value] args\n"  $0

exit 2;;

esac

done

getopts后面用到两个:,第一个屏蔽系统报错,第二个要求c选项必须取值。

bash-3.00# ./getopts.sh -b bbbbbb  -c cccccc

1 means your input is b

the value of $OPTARG is bbbbbb

2 means your option is now c

this mean the value of $OPTARG is cccccc

bash-3.00# cat getopts.sh

#!/bin/sh

while getopts :ab:c: name

do

case $name in

a)      aflag=1;echo $aflag means your input is "a"

;;

b)      bflag=1

echo $bflag means your input is "b"

echo the value of '$OPTARG' is $OPTARG;

;;

c)      echo 2 means your option is now c

echo this mean the value of '$OPTARG' is $OPTARG

;;

?)     printf "Usage: %s: [-a] [-b value] args\n"  $0

exit 2;;

esac

done

$OPTARG的选项值随着选项的变化而变化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值