最初のパラメータがある場合はそれを表示し、存在しない場合は "なし"を出力する単純なシェルスクリプトを作成しようとしています。スクリプトはtest.shと呼ばれます。単純なシェルスクリプトにパラメータを渡す際に問題が発生する
if [$1 = ""]
then
echo "none"
else
echo $1
fi
パラメータなしでスクリプトを実行すると、すべてが動作します。しかし、このコマンドをsource test.sh -test
に実行すると、このエラーが発生する-bash: [test: command not found
スクリプトが続行され、正しくエコーテストが行われる前にエラーが発生します。私は間違って何をしていますか?
の前にスペースが必要です。]] ' –
@glennjackman:ありがとうございました! – shellter
このスクリプトを使用すると、-bash:[:=:単項演算子が使用されます。 – Spencer