変数の値がヌルかなどの条件により、代入する値や表示する内容を変えることができる。 ${var:-word} varに値が入っていないならwordを値として返す ${var:=word} varに値が入っていないならwordを代入する ${var:?word} varに値が入っていないならword出力する ${var:+word} varに値が入っていたらwordを値として返す :は省略可能で省略した場合、変数の値が未設定かヌルが代入されている場合にヌル文字が 入っている変数として扱う。未定義の変数の場合は値が入っていない変数として扱う。 $ var1=abc $ echo ${var1:-xyz} #値が入っていればそのまま表示 abc $ var1= $ echo ${var1:-xyz} #値が入っていなければ-以降を表示 xyz $ echo $var1 #値は入っていないまま $