在shell脚本中使用一个变量
(1)、先定义一个变量
定义一个变量时,不像c语言那样有变量类型(整形、字符型等),shell脚本中没有变量类型
(2)、在引用这个变量
记住:应用这个变量时一定在变量前加上“$”符号,其实就像c语言中宏展开,在引用变量的地方,进行展开
(3)、例子:变量的值再当成变量
#!/bin/sh
string="" //定义一个字符串变量
n=123 //其实就是定义一个变量并且赋初值
while [ $n -gt 0 ]
do
i=$(($n%10)) //每次循环后,变量值($n%10)在当成变量赋值给变量i
n=$(($n/10))
string=$string$i //由于string是字符串变量,每循环1次,存入一个值(注意:字符串的存储方式。不然这句理解就有问题)
done
echo $string
(4)、易错的例子:
第1种错误
#!/bin/sh
n=123
while [ $n -gt 0 ]//不能用“>”替换“-gt”,不然程序会无限循环
do
n=n-1 //变量的引用得在变量前加上“$”,直接这样子引用变量并赋值是错误的(不像C语言)
echo $n
done
第2种错误
#!/bin/sh
n=123
while [ $n -gt 0 ]//不能用“>”替换“-gt”,不然程序会无限循环
do
n=$( $(n-1) ) // “()”括号括的位置不对,因为要引用的是前面定义的变量n,而不是n-1。修改为:“n=$(($n-1))”
echo $n
done