シェルスクリプトで((i++))は比較の用途でのみ使う
Bash 3.xまでは(少なくともmacOSでは)シェルスクリプトで
set -e
i=0((i++))と書いても問題がなかったが、Bash 5.xでは ((expr)) の演算結果が0の場合、set -e によってエラーと扱われて終了する。そのため、冗長だけども正しくは以下のように書く。
set -e
i=0i=$((i+1))Bash 3.xまでは(少なくともmacOSでは)シェルスクリプトで
set -e
i=0((i++))と書いても問題がなかったが、Bash 5.xでは ((expr)) の演算結果が0の場合、set -e によってエラーと扱われて終了する。そのため、冗長だけども正しくは以下のように書く。
set -e
i=0i=$((i+1))