created: 2020-02-12T00:06:11.000Z

シェルスクリプトで変数が未定義かを確認する

毎回忘れるのでメモ

-n で判定できる。逆は -z。 正確には値のlengthがnon-zeroかという判定をしている

main.sh

#!/bin/bash

[ -n "$ONE" ] && echo "ONE is non-zero"
[ -z "$ONE" ] && echo "ONE (length) is zero"

実行

$ ONE=1 ./main.sh
ONE is non-zero
$ ONE= ./main.sh
ONE (length) is zero

参考

UXデザインの法則 ―最高のプロダクトとサービスを支える心理学
[ad] UXデザインの法則 ―最高のプロダクトとサービスを支える心理学
Jon Yablonski, 相島 雅樹 (単行本(ソフトカバー))