shell编程——getopts用法小结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell编程——getopts用法小结相关的知识,希望对你有一定的参考价值。

       shell脚本或函数传参数,可以访问位置变量来使用参数的值。但是在参数比较复杂的情况下,最好使用getopts处理,用来处理命令行的选项和参数。


语法格式:
       getopts option_string args

若script.sh参数为-f filename -e editor -p cat,即./script.sh -f filename -e editor -p cat

选项和参数的判断可以如下:
while getopts f:e:p:  option
do
    case "${option}" in
        f)
            file_name=${OPTARG};;
        e)
            editor=${OPTARG};;
        p)
            page=${OPTARG};;
        \?)
           command;;
    esac
done


option_string包含被处理的选项字符,如f,e,p。如果某个选项后有冒号,表示这个选项后要指定参数,选项和参数之间空格分隔,如-f filename


选项会保存在args中,如示例的option,处理f选项时,$option的值为f;参数值会保存在OPTARG中,处理f选项时,$OPTARG值为filename。


getopts每次成功处理选项后,退出状态是0


当getopts命令返回非0值表示没有选项再被处理,while循环退出。


如果某个选项后有冒号,表示这个选项后要指定参数,若执行脚本时,选项后没有参数,getopts会把?赋值给option。?为特殊字符,使用原样时,需要转义。


本文出自 “11317177” 博客,请务必保留此出处http://11327177.blog.51cto.com/11317177/1787413

以上是关于shell编程——getopts用法小结的主要内容,如果未能解决你的问题,请参考以下文章

shell 命令getopts用法

Linux下Shell脚本命令行参数:getoptgetopts用法

Linux下Shell脚本命令行参数:getoptgetopts用法

Linux下Shell脚本命令行参数:getoptgetopts用法

shell脚本接参数优美用法

shell 脚本参数解析之 getopt getopts