是否有一个记录shell脚本参数的约定?
举例来说:
#!/usr/bin/env bash
# <description>
#
# Usage:
# $ ./myScript param1 [param2]
# * param1: <description>
# * param2: <description>
我不喜欢这个特定模板的一些事情:
- 脚本的文件名(
myScript
)出现在文件本身中 - 参数描述似乎很奇怪
$
之前的前导空格在视觉上是有用的,但可能会导致语言与块注解的混淆,导致一些验证工具抱怨混合/不一致的缩进(例如,空格,制表符用于代码-当然,前提是你更喜欢制表符)
在这方面是否有任何准则?
7条答案
按热度按时间r6l8ljro1#
传统上,你在usage()函数中记录你的参数:
093gszye2#
我通常把我的用法 Package 在函数中,这样我就可以从-h参数调用它。
jc3wubiy3#
我会使用Heredoc重新评论:
而不是:
我认为它比所有这些回声线都要干净。
ecr0jaav4#
Vim bash IDE可以做到这一点:
uemypmqf5#
我建议让你的脚本自动打印用法(如果它不应该在没有参数的情况下运行):
8cdiaqws6#
我宁愿写:
尝试查看标准UNIX实用程序(例如ls --help)的帮助格式
x4shl7ld7#
基于@eddy的excellent answer,下面是处理多个参数的版本(在本例中为2)
需要仔细检查参数数组的长度(
[ $# != 2 ]
)以及参数是否为null([ -z "$arg" ]
),以处理作为参数给出的空字符串。