Bashで文字列を比較する方法 質問する

Bashで文字列を比較する方法 質問する

変数を文字列と比較するにはどうすればよいでしょうか (そして一致した場合に何かを行うにはどうすればよいでしょうか)?

ベストアンサー1

if文で変数を使用する

if [ "$x" = "valid" ]; then
  echo "x has the value 'valid'"
fi

一致しない場合に何かしたい場合は、=を に置き換えてください!=。詳細については、文字列操作そして算術演算それぞれのドキュメントに記載されています。

なぜ引用符を使うのでしょうか$x?

を引用符で囲む必要があります$x。空の場合、Bash スクリプトで以下に示すように構文エラーが発生します。

if [ = "valid" ]; then

==演算子の非標準使用

Bashでは==を と同等とみなすために使用できるが[これは標準ではない

引用符がオプションである最初のケースのいずれかを使用します$x

if [[ "$x" == "valid" ]]; then

または、2 番目のケースを使用します。

if [ "$x" = "valid" ]; then

おすすめ記事