シェルスクリプトでもtrue
とfalse
が使えることを知ったのでメモ。
それぞれexit statusを0と1で返す性質があります。
#!/bin/bash
true
echo $? # = 0
false
echo $? # = 1
この性質を使うと下記のような制御が可能です。
#!/bin/bash
bool=true
$bool && echo "true" # = true
bool=false
# falseの時に"false"を出力
$bool || echo "false" # = false
echo $? # = 0
trueについては文字列が入ってたり未定義の場合と同じ挙動であまり使いみちが思いつかないかったですが、
falseの場合だけ処理させるケースを||
を使って1行で表現できるのは便利でした。