私はちょうどbash構文に出くわしました:
foo=42
bar=$[foo+1] # evaluates an arithmetic expression
これをグーグルで調べたところ、 http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_04.html#sect_03_04_05が見つかりました:
3.4.6. 算術展開
算術展開により、算術式の評価と結果の置換が可能になります。算術展開の形式は次のとおりです。
$(( EXPRESSION ))
...
可能な限り、Bash ユーザーは角かっこを含む構文を使用するようにしてください。
$[ EXPRESSION ]
ただし、これは EXPRESSION の結果を計算するだけで、テストは行いません...
私のbashのmanページでは、次の$(( EXPRESSION ))
ようなフォームしか見つかりません:
foo=42
bar=$((foo+1)) # evaluates an arithmetic expression
では、どのテストが で実行されていない$[...]
の$((...))
か、それとも の$[...]
単なるレガシー バージョンなの$((...))
か?