sách gpt4 ai đã đi

Bash getopts 命令

In lại 作者:行者123 更新时间:2023-11-29 09:16:56 hai mươi bốn 4
mua khóa gpt4 Nike

我在他们的网站上关注 IBM 的示例:

(列表 #5)http://www.ibm.com/developerworks/library/l-bash-parameters/index.html

#!/thùng/bash
echo "OPTIND starts at $OPTIND"
while getopts ":pq:" optname
LÀM
case "$optname" in
"p")
echo "Option $optname is specified"
;;
"q")
echo "Option $optname has value $OPTARG"
;;
"?")
echo "Unknown option $OPTARG"
;;
":")
echo "No argument value for option $OPTARG"
;;
*)
# Should not occur
echo "Unknown error while processing options"
;;
esac
echo "OPTIND is now $OPTIND"
xong

我只想有一个名称超过 1 个字母的选项。即 -pppp 和 -qqqq 而不是 -p 和 -q。

我已经编写了我的程序并执行 -help 给我一个问题...

1 Câu trả lời

对于传统的 shell 命令,-help相当于-h -e -l -p , 所以如果你用 getopts 解析“-help”它将把它当作四个独立的参数。因此,除非您想自己进行所有解析,否则您不能使用仅以单个连字符作为前缀的多字母参数。按照惯例,不仅仅是单个字符的选项(又名“长选项”)前面有两个破折号,而不是使事情变得明确。

帮助文本的约定是同时支持 -h--help .

不幸的是 bash 的 getopts内置不支持长选项,但在所有常见的 Linux 发行版上都有一个单独的 getopt可以使用的实用程序,它确实支持长选项。

There's more discussion of the topic in this answer

关于Bash getopts 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9880261/

hai mươi bốn 4 0
Bài viết được đề xuất: bash - emacs --eval '(ediff "$ 1""$ 2")' 如何将此行放入 shell 脚本?
Bài viết được đề xuất: 找不到 bash 输出命令
Bài viết được đề xuất: 更改目录的 Bash 函数
Bài viết được đề xuất: Bash 以声明方式定义要循环的列表
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com