Dod*_*uma 6 shell gnu shell-script posix
我一直在调整在我的 shell 脚本和自定义函数中使用 GETOPT 和 GETOPTS,以使我能够更灵活地使用我创建的函数。在使用了许多 UNIX 函数之后,我意识到它们中的很多都使用了某种相似的语法。
示例-v用于详细输出和-R/-r递归功能。
我查看了实用程序约定的POSIX 标准指南和基于 C 的实用程序的GNU 选项表。试图了解这是否是设计使然,以及是否有任何我应该遵循的规则。
我的问题是:
1. 是否有任何具有指定含义的特定选项标志?
2. 我的选择有多少自由,我不应该违反哪些规则?
3. 我应该避免给出类似-t和-T不同含义的选项,还是应该为了简单起见将它们组合在一起?
4. 什么情况下应该使用大写或小写字母?
没有快速而牢固的规则,甚至没有共同的约定。至多有几个选项在一些通用实用程序中一致使用——但不是在所有通用实用程序中使用。
这里有一些常见的字母——但请记住,这些绝不是通用的约定。如果您具有以下描述的功能之一,则最好使用相应的选项。如果其中一个选项对您的实用程序没有意义,请随意将其用于其他用途。
-c COMMAND或-e COMMAND:执行命令。例子:sh -c, perl -e。-d或-D:调试。-f: force,危险动作不求确认。-h: help — 但许多实用程序只识别 long 选项--help或根本不识别。示例:Linux getfacl、mount. 反例: GNU ls, du, df(没有简短的选项,-h是人的大小),less(-?是帮助,-h是别的东西)。-i:确认提示的(我nteractive)。-n: 不要采取行动,只是打印将要做什么。例子:make。-r或-R:递归。-q或-s:安静或无声。示例:grep -q表示不显示输出,grep -s表示不显示错误信息。-v: 啰嗦。-V: 显示版本信息。传统上使用小写字母,大写字母才开始使用,因为只有26个小写字母。有时大写字母与相应的小写字母有关(例如:GNU grep -h/-H, ssh -x/-X, cp -r/-R),有时则不然。
| 归档时间: |
|
| 查看次数: |
2119 次 |
| 最近记录: |