ShellScriptで変数に値があるかどうかを判断する方法

yupix

!!! note AND ORを使う際の変数の値のチェックには気をつけよう! ※ORの場合片方だけがあるだけでになったり。。。

まずはじめに

ShellScriptで変数に値がある場合だけ動かしたい処理などは多くあるはずです。

やりかた

変数が空の場合

今回はtestという変数を使ってテストします。

1
2
3
if [[ -z "$test" ]];then
    echo "変数がないよ!"
fi

-zを使うことで変数がある場合はとなります

変数がある場合

1
2
3
4
5
6
#変数を定義
test="test"

if [[ -n "$test" ]];then
    echo "変数があるよ!"
fi

-nを使うことで変数がない場合となります。

1つで確認する方法

ifの使い方をある程度知ってる場合は当たり前のような話ですが 一応書いておきます。

1
2
3
4
5
6
7
8
#変数を定義(elseで動作)
test="test"

if [[ -z "$test" ]];then
    echo "変数がないよ!"
else
    echo "変数があるよ!"
fi

-zで変数がない場合となるため、elseを使うことで変数がある場合の動作を作ることができます。

最後に

ShellScriptは楽しいので、今後もこういった事を書いていく予定です。 あと、昔作った記事で書きかけのやつとかは今度書きます。 最後に更新が遅くなってしまったのは純粋無為に何も書くようなことが無かったからです

Built with Hugo
テーマ StackJimmy によって設計されています。