我有一个文件从命令行输入解析选项标记,如果你传入-h
,它会给出错误。
h)
usage
exit 1
;;
返回:usage: command not found
有人知道这里发生了什么吗?我发现了许多使用usage
的示例,所以我认为它应该可行。我似乎找不到搜索谷歌的任何相关信息。
答案 0 :(得分:3)
您需要在之前添加到您的shell脚本,然后再调用usage
:
usage() {
echo "$0: some help text"
}
答案 1 :(得分:3)
您缺少的是用法的函数定义:
function usage {
cat <<-USAGE
Now you can define your usage here
take as many lines as you want. When
you finish, just put "USAGE" on a line
by itself.
USAGE
}
在usage
的电话之前放这个。请注意,USAGE
行必须仅以制表符开头。
答案 2 :(得分:2)
这些工作示例在其源中定义了一个名为usage
的函数。
如您所见,当您提供-h
标志时,它会被调用。
将其移至函数的通常原因是
答案 3 :(得分:0)
usage
不是命令,而是您提供的自定义shell函数的通用名称,用于输出脚本的使用信息。