算術拡張と中括弧拡張を組み合わせることはできますか?
$ for i in {$((1 + 1))..5}; do echo $i; done;
{2..5}
$ echo "bash laughs at me"
ベストアンサー1
man bash
説明については、以下を参照してください。
拡張順序は、中かっこ拡張、チルダ拡張、パラメータ、変数と算術拡張、コマンド置換(左から右へ)、トークン化、パス名拡張です。
中括弧拡張は算術拡張の前に発生するため、目的の方法で組み合わせることはできません。
代わりに使用してくださいseq
:
for i in $(seq $((a+4)) 12) ; do echo $i ; done