LPIC-1 / シェルとスクリプト ・ コマンド問題
$
- echo $(($a + $b))✓ 正解
- echo $($a + $b)
- echo ${a + b}
- echo $[a - b]
💡 $(( 式 )) は算術展開で、内部で四則演算を評価します。$( ) はコマンド置換、${ } は変数展開で計算はできません。$[ ] は旧式で非推奨かつ設問は引き算で和になりません。
○ echo $(($a + $b)):正解。$(( 式 )) は算術展開で、$a + $b の和を計算して返します。
✕ echo $($a + $b):$( ) はコマンド置換で、$a をコマンドとして実行しようとし計算にはなりません。
✕ echo ${a + b}:${ } は変数展開の構文で、内部での算術計算はできません。
✕ echo $[a - b]:$[ ] は古い算術表記で非推奨であり、かつ式が引き算のため和にはなりません。