请选择 进入手机版 | 继续访问电脑版
查看: 337|回复: 2

[经验分享] 基于最常用的getopt解析方式说明

[复制链接]

签到天数: 133 天

[LV.7]化身百千

发表于 2018-10-9 17:12:46 | 显示全部楼层 |阅读模式
bash的getopt命令经常用在shell脚本内部或函数内部,用来解析脚本执行或函数执行时传递的选项、参数。

下面这个是最常用的getopt解析方式(有这个命令就够了)。如果要了解getopt更完整的语法,见man getopt。

getopt -o SHORT_OPTIONS -l LONG_OPTIONS -n "$0" -- "$@"
其中:
-o SHORT_OPTIONS
--options SHORT_OPTIONS
getopt通过"-o"选项收集命令行传递的短选项和它们对应的参数。关于SHORT_OPTIONS的格式见下一小节。

-l LONG_OPTIONS
--longoptions LONG_OPTIONS
getopt通过"-l"选项收集命令行传递的长选项和它们对应的参数。可能从别人的脚本中经常看到"--long",是等价的,前文已经解释过,长选项只要不产生歧义,是可以进行缩写的。关于LONG_OPTIONS的格式见下一小节。

-n NAME
getopt在解析命令行时,如果解析出错(例如要求给参数的选项没带参数,使用了无法解析的选项等)将会报告错误信息,getopt将使用该NAME作为报错的脚本名称。

-- "$@"
其中--表示getopt命令自身的选项到此结束,后面的元素都是要被getopt解析的命令行参数。这里使用"$@",表示所有的命令行参数。注意,不能省略双引号。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

返回顶部