Bash/Zsh 二重括弧で increment する際の注意点
検証した環境
- BASH_VERSION='3.2.57(1)-release'
- BASH_VERSION='4.3.48(1)-release'
Bash/Zsh で increment するには
こんな感じで 二重括弧 (double parentheses) が使えます。
COUNT=0
(( COUNT ++ ))
echo $COUNT # 1
ただ Bash 環境での、この increment には、注意点がありました...
COUNT=0
(( COUNT ++ ))
echo $? # 1
echo $COUNT # 1
increment は問題なくしてくれるのですが、終了ステータスが 1
として判定されるのです。(何がエラーなのだろうか...)
終了ステータス 1
を常に監視しているような環境では注意したほうがいいかもしれません。。
ちなみに Zsh では正常終了のステータス 0
が返されます。
COUNT=0
(( COUNT ++ ))
echo $? # 0
echo $COUNT # 1
他の書き方ではどうか
COUNT=0
は省略します。全て Bash で試しました。
(( COUNT += 1 ))
echo $? # 0
echo $COUNT # 1
(( COUNT = COUNT + 1 ))
echo $? # 0
echo $COUNT # 1
COUNT=$((COUNT ++))
echo $? # 0
echo $COUNT # 1
COUNT=$((COUNT + 1))
echo $? # 0
echo $COUNT # 1
まとめ
(( COUNT ++ ))
は Bash では exit 1
が返るのでご注意を!
Author And Source
この問題について(Bash/Zsh 二重括弧で increment する際の注意点), 我々は、より多くの情報をここで見つけました https://qiita.com/att55/items/715b2b25757307afb15e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .