028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

Shell脚本中getopts如何使用

Shell脚本中getopts如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

我们提供的服务有:成都网站制作、做网站、外贸营销网站建设、微信公众号开发、网站优化、网站认证、巴中ssl等。为成百上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的巴中网站制作公司

1. getops

getopts是一个解析脚本选项参数的工具。

(1) 语法格式:getopts [option[:]] [DESCPRITION] VARIABLE

(2) option:表示为某个脚本可以使用的选项.

(3) ":":如果某个选项(option)后面出现了冒号(":"),则表示这个选项后面可以接参数(即一段描述信息DESCPRITION)

(4) VARIABLE:表示将某个选项保存在变量VARIABLE中

getopts是linux系统中的一个内置变量,一般用在循环中。每当执行循环是,getopts都会检查下一个命令选项,如果这些选项出现在option中,则表示是合法选项,否则不是合法选项。并将这些合法选项保存在VARIABLE这个变量中。

getopts还包含两个内置变量,及OPTARG和OPTIND:

初次使用要注意这几点:

2. 实验

(1) getops参数简单使用

#!/bin/bash while getopts ':b:d:' OPT &> /dev/null;do  case $OPT in  b)  echo "The options is b"  echo $OPTARG ;;  d)  echo "The options is d"  echo $OPTARG ;;  *)  echo "Wrong Options"  exit 7 ;;  esac # echo $OPT # echo $OPTARG done echo $OPTIND shift $[$OPTIND-1] echo $1

Shell脚本中getopts如何使用

执行结果:

./getopts1.sh -d 'nice' fixnale

Shell脚本中getopts如何使用

说明:

当输入-d时,$OPT=d,$OPTARG='nice',因此就会显示d)...这一部分的信息。

由于这里有一个选项(-d)和一个参数('nice'),$OPTIND指向命令行中下一个选项或参数的索引位置,因此这里即为3。

shift $[$OPTIND-1]表示将文件名前面的选项和参数踢掉.

(2) getops参数进一步使用

#!/bin/bash echo $* while getopts ":a:bc:" opt do  case $opt in  a)  echo $OPTARG $OPTIND;;  b)  echo "b $OPTIND";;  c)  echo "c $OPTIND";;  ?)  echo "error"  exit 1;;  esac done echo $OPTIND shift $(( $OPTIND-1 )) echo $0 echo $*

Shell脚本中getopts如何使用

执行结果:

./getopts2.sh -a 11 -b -c 6

Shell脚本中getopts如何使用

说明:

while getopts ":a:bc:" opt #第一个冒号表示忽略错误;字符后面的冒号表示该选项必须有自己的参数。

optind初值为1,遇到"x",选项不带参数,optind+=1;遇到"x:",带参数的选项,optarg=argv[optind+1],optind+=2;遇到"x::",可选参数,属于#1和#2之一。

看完上述内容,你们掌握Shell脚本中getopts如何使用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前文章:Shell脚本中getopts如何使用
地址分享:http://www.tsicrk.com/article/pgphge.html

其他资讯

让你的专属顾问为你服务

1.3907s