私の全スクリプトは現在こうなっています。
#!/bin/sh
clear;
blanko="";
# Dummy-Variablen
variable=Testvariable;
if [[$variable == $blanko]];
then
echo "Nichts da!"
else
echo $variable
fi
と入力すると
TestSelect.sh
と表示されます。
/usr/bin/TestSelect.sh: line 6: [[Testvariable: command not found
Testvariable
どうすれば直せますか?
なお、[ ]
の周りにも空白が必要です。
if [ "$variable" = "$blanko" ]; then
# more code here
fi
ただし、単語の分割やグロビングを防ぐために、変数は [ ]
の内側を二重引用符で囲む必要があります。 二重引用符は比較する変数のどちらかが設定されていない場合にも役に立ちます。
なぜ [ ]
の周りにスペースが必要なのかについては、次の投稿をご覧ください。
また、関連記事として、同様にスペースが必要な他の構文要素について説明しています。
最後に、この記事では [[ ]]
と [ ]
の違いについて説明しています。
関連