Bashの三項演算子(?:)



Ternary Operator Bash



解決:

三項演算子? :の短い形式ですif / else

5)の場合 '$ b'a = $ c ;; *)a = $ d ;; esac

または



[[$ b = 5]] && a = '$ c' || a = '$ d' 

コード:

a = $(['$ b' == 5] && echo '$ c' || echo '$ d') 

条件が単に変数が設定されているかどうかをチェックしているだけの場合は、さらに短い形式があります。



a = $ {YES:-20}

に割り当てますの値VAR ifVARが設定されている場合、それ以外の場合はデフォルト値が割り当てられます20-これは式の結果である可能性もあります。

このアプローチは、技術的には「パラメータ拡張」と呼ばれます。