我知道如何为bash中的参数赋予默认值,或者如果未设置错误消息则退出并显示错误消息。 (来自here)
我想检查是否设置了参数,如果不是和退出则执行一些代码。
if [$1 is not set]; then
execute command
fi
我正在编写另一个命令的包装器。如果没有设置第一个参数(它实际上是输入文件名),它有它自己的用法消息。它有其他输入,我现在正在硬编码。 bash脚本中的实际命令类似于:
command $1 12 3124 534
如果没有向该脚本发送$ 1,我想调用它自己的帮助消息。
答案 0 :(得分:4)
只需检查参数的长度:
if (( $# < 1 )); then
echo 'There are no arguments, so you can bet that $1 was not set.'
fi
检查变量在shell中是否具有非空值通常是微不足道的:
[ -n "$val" ]
但是,如果您想确定某个名称是否已宣布,我会将您推荐给BashFAQ 83