両方の変数が空であることを確認する小さなスクリプトを実行しようとしています。正しい出力が得られましたが、閉じカッコが欠落しているというエラーも表示されます。二重かっことかっこを使ってみましたが、うまくいきませんでした。
var=""
non="hi"
if ([ -z "$var"] && [ -z "$non"])
then
echo "both empty"
else
echo "has data"
fi
出力:
line 6: [: missing `]'
has data
ベストアンサー1
"$non" と ] の間にはスペースが必要で、 () はあってはなりません。
if [ -z "$var" ] && [ -z "$non" ]