详解shell脚本中关于getopts的使用方法
副标题[/!--empirenews.page--]
今天主要介绍一下怎么用getopts工具完善脚本命令行参数。 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参数简单使用
执行结果:
说明: 当输入-d时,$OPT=d,$OPTARG='nice',因此就会显示d)...这一部分的信息。 由于这里有一个选项(-d)和一个参数('nice'),$OPTIND指向命令行中下一个选项或参数的索引位置,因此这里即为3。 shift $[$OPTIND-1]表示将文件名前面的选项和参数踢掉. (2) getops参数进一步使用
执行结果:
说明: while getopts ":a:bc:" opt #第一个冒号表示忽略错误;字符后面的冒号表示该选项必须有自己的参数。
optind初值为1,遇到"x",选项不带参数,optind+=1;遇到"x:",带参数的选项,optarg=argv[optind+1],optind+=2;遇到"x::",可选参数,属于#1和#2之一。
(编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |