检查 Bash shell 脚本中是否存在输入参数

问题描述

它是:

if [ $# -eq 0 ]
  then
    echo "No arguments supplied"
fi

$#变量将告诉您脚本传递的输入参数的数量

或者您可以检查参数是否为空字符串,例如:

if [ -z "$1" ]
  then
    echo "No argument supplied"
fi

开关将-z测试扩展"$1"是否为空字符串。如果它是空字符串,则执行正文。

解决方法

我需要检查输入参数的存在。我有以下脚本

if [ "$1" -gt "-1" ]
  then echo hi
fi

我明白了

[: : integer expression expected

如何首先检查输入参数 1 以查看它是否存在?