if [[ -z $1 ]]
语句在这里确切检查了什么?
每当我运行它时输出如下:
[root @ localhost~] #sh script.sh
没有给出任何论据
#!/bin/bash
if [[ -z $1 ]]; then
echo "No argument is given"
elif [ "$1" == "testfile" ] ; then
echo "Right argument is given"
else
echo "Wrong argument is given"
fi
答案 0 :(得分:3)
请参阅man bash
:
[[ expression ]]
根据条件表达式
的评估,返回0或1的状态
并在下面
-z string
如果字符串的长度为零,则为真。
答案 1 :(得分:-3)
$#变量将告诉您脚本传递的输入参数的数量。
或者您可以检查参数是否为空字符串:
if [ $# -eq 0 ]
then
echo "No arguments supplied"
fi