gpt4 book ai didi

linux - 为什么一些 Linux 程序指定长格式和简写参数?

转载 作者:太空宇宙 更新时间:2023-11-04 09:45:32 25 4
gpt4 key购买 nike

<分区>

每当我浏览文档和手册页时,我都会注意到大多数 Linux 程序都有两种类型的参数,这是我真正感兴趣的地方...

  • 一个似乎是完整的参数名称(长格式)。
  • 而且one好像是简写。

grep为例。如果我运行 grep --help 免责声明:这不是关于 grep 的问题。我在许多其他工具中都看到过这一点。

Regexp selection and interpretation:
-E, --extended-regexp PATTERN is an extended regular expression
-F, --fixed-strings PATTERN is a set of newline-separated strings
-G, --basic-regexp PATTERN is a basic regular expression
-P, --perl-regexp PATTERN is a Perl regular expression
-e, --regexp=PATTERN use PATTERN as a regular expression
-f, --file=FILE obtain PATTERN from FILE
-i, --ignore-case ignore case distinctions
-w, --word-regexp force PATTERN to match only whole words
-x, --line-regexp force PATTERN to match only whole lines
-z, --null-data a data line ends in 0 byte, not newline

可以看到有两种类型的参数。速记和完整的参数名称。

另外需要注意的是,如果您指定这些参数的简写,它们之间用空格分隔,但是当使用完整参数时,它似乎被 = 符号分隔。例如:grep --file=FILEgrep -f FILE

  1. 使用两种不同类型的参数来做同样的事情的目的是什么?
  2. 你能用 grep --file FILE 代替 grep --file=FILE 吗?
  3. 对于问题 2,如果您的回答是“因为这就是它的编程方式”,那么我的问题是他们为什么要这样编程?您有什么原因不能使用 grep --file FILE 吗?
  4. 是否有一些您应该遵循的约定?
  5. grep *-*-file 中的前导 - 是否在某些方面发挥了重要作用?

我希望得到一个可靠的答案,这样我就能理解为什么程序员会这样做!

谢谢!

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com