シェルスクリプト :: 値を置き換える演算子

演算子処理内容目的
${var:-val}varが存在し、かつnullではない場合その値を返す。これ以外の場合valを返す変数が定義されていない場合に規定値を返すなどに利用
${var:=val}varが存在し、かつnullではない場合その値を返す。これ以外の場合varにvalをセットした上でvalを返す変数が定義されていない場合に規定値をセットするなどに利用
${var:?mess}varが存在し、かつnullではない場合その値を返す。これ以外の場合、「var: mess」というメッセージを出力し、強制終了する予期せぬエラーの回避などに利用
${var:+val}varが存在し、かつnullではない場合valを返す。これ以外はnullを返す変数が定義されているかを調べる時に利用