【发布时间】:2011-11-07 00:25:31
【问题描述】:
只有当变量的先前值为零时,带有调试选项“set -e -v”的以下脚本才会在增量运算符处失败。
#!/bin/bash
set -e -v
i=1; let i++; echo "I am still here"
i=0; let i++; echo "I am still here"
i=0; ((i++)); echo "I am still here"
bash(GNU bash,版本 4.0.33(1)-release (x86_64-apple-darwin10) 以及 GNU bash,版本 4.2.4(1)-release (x86_64-unknown-linux-gnu))
有什么想法吗?
【问题讨论】:
-
我从来没有想过一个看似无害的增量会与
set -e发生这种意外的交互。幸运的是我发现了这个问题。
标签: bash shell set operator-keyword increment