Com*_*erd 22 variables debugging shell ubuntu command-line
我是shell编程的初学者,它听起来像一个非常愚蠢的问题,但我似乎无法将变量值增加1.我已经看过教程,但它只显示如何将2个变量加在一起
我尝试了以下方法,但它不起作用
i=0
$i=$i+1 # doesnt work , command not found
echo "$i"
$i='expr $i+1' # doesnt work , command not found
echo "$i"
$i++ # doesnt work , command not found
echo "$i"
Run Code Online (Sandbox Code Playgroud)
如何将变量的值增加1?
Gab*_* L. 51
你可以试试这个:
i=0
i=$((i+1))
Run Code Online (Sandbox Code Playgroud)
zah*_*hid 12
在bash中增加变量的方法不止一种,但您尝试的方法不正确.
您可以使用例如算术扩展:
i=$((i+1))
Run Code Online (Sandbox Code Playgroud)
或仅:
((i=i+1))
Run Code Online (Sandbox Code Playgroud)
要么:
((i+=1))
Run Code Online (Sandbox Code Playgroud)
甚至:
((i++))
Run Code Online (Sandbox Code Playgroud)
或者您可以使用let:
let "i=i+1"
Run Code Online (Sandbox Code Playgroud)
或仅:
let "i+=1"
Run Code Online (Sandbox Code Playgroud)
甚至:
let "i++"
Run Code Online (Sandbox Code Playgroud)
另见:http://tldp.org/LDP/abs/html/dblparens.html.
expr的使用方法:
i=0
i=`expr $i + 1`
Run Code Online (Sandbox Code Playgroud)
i++的使用方法
((i++)); echo $i;
Run Code Online (Sandbox Code Playgroud)
在 gnu bash 中测试