如何使用Bash getopts内置的长选项?

前端之家收集整理的这篇文章主要介绍了如何使用Bash getopts内置的长选项?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图用Bash getopts来解析一个-temp选项。我打电话给我这样的脚本: @H_502_1@./myscript -temp /foo/bar/someFile

这是我用来解析选项的代码

@H_502_1@while getopts "temp:shots:o:" option; do case $option in temp) TMPDIR="$OPTARG" ;; shots) NUMSHOTS="$OPTARG" ;; o) OUTFILE="$OPTARG" ;; *) usage ;; esac done shift $(($OPTIND - 1)) [ $# -lt 1 ] && usage
getopts只能解析短选项。

大多数系统还有一个外部getopt命令,但getopt不是标准的,并且通常被设计破坏,因为它不能安全地处理所有参数(带有空格和空参数的参数),只有GNU getopt可以安全地处理它们,但是只有您以GNU特定的方式使用它。

更简单的选择是既不使用,只需使用while循环迭代脚本的参数,并自行解析。

参见http://mywiki.wooledge.org/BashFAQ/035例子。

猜你在找的Bash相关文章