このようなスクリプトがあります。
#!/bin/bash
line="hello"
if [ -z $line ] ; then
echo "String null"
fi
これはうまくいきますが、line
以下のように提供すると
line="hello welcome"
次のようにエラーが渡されます。
a.sh: 5: [: hello: unexpected operator
このような場合は空であるかどうかを確認できますか?
ベストアンサー1
if条件で$ lineを二重引用符で囲むと正常に動作します。
#!/bin/bash
line="hello welcome "
if [ -z "$line" ] ; then
echo "String null"
fi