如何指定 -?GNU getopt 选项

Mar*_*ker 8 bash shell-script getopts

使用 GNUgetopt命令解析命令行参数时,我如何(如果可能)识别-?为另一个选项?有没有办法在操作字符串中转义它?

Ric*_*rri 6

GNU getopt命令使用 GNU getopt()库函数来解析参数和选项。

手册页的getopt(3)规定:

如果 getopt() 不能识别选项字符,它会向 stderr 打印一条错误消息,将字符存储在 中optopt,然后返回?。调用程序可以通过将 opterr 设置为 0 来阻止错误消息。

因此?用于表示“未知选项”,不能用作选项值。(不可能-?从未知选项中分辨出该选项。)