Getopt
命令列選項解析程式
Getopt 是一个 C 语言的库函数,用于解析 Unix/POSIX 风格的命令行选项。它是 POSIX 规范的一部分,对于类 Unix 系统是通用的。同时它也是用于解析 Shell 脚本中的命令行参数的 Unix 程序的名称。
历史
如何指定命令行程序的选项是一个长期存在的问题。早期程序使用多种风格来指定选项,包括单字符选项 (-a
)、一起指定的多个选项 (-abc
相当于 -a -b -c
)、多字符选项 (-inum
)、带参数的选项 (-a arg
, -inum 3
, -a=arg
)和不同的前缀字符(-a
, +b
, /c
)等。
getopt 函数的目的是提供一种解析命令行选项的标准机制,使之成为每个人都可以使用的通用接口。为此,原作者在实现这个函数时提供了广泛的支持,无论是单字符选项、一起指定的多个选项还是带参数的选项(-a arg
或 -aarg
),所有这些都可由选项字符串控制。