shell基础
(一)变量的命名及赋值:
var=value
(1)、其中var是变量名,value是变量的值。如果value不包含任何空白字符(空格),就不需要包含单引号或双引号
(2)、var=value不同于var (空格)=(空格)value,前者是赋值操作,后者是相等操作
(3)、在变量名前加$或者$(var)就可以输出变量的值
[root@localhost shell]# var=123 [root@localhost shell]# echo $car [root@localhost shell]# echo $var 123 [root@localhost shell]# var="1 2 3 " [root@localhost shell]# echo $var 1 2 3 [root@localhost shell]# var = 123 bash: var: command not found
(二)测字符串的长度
echo ${#var}
[root@localhost shell]# var="1 2 3 4 5 6 7 8 9" [root@localhost shell]# echo ${var} 1 2 3 4 5 6 7 8 9 [root@localhost shell]# echo ${#var} 17 [root@localhost shell]#
(三)算数运算
在bash环境中可以使用let,(()),[]来执行基本的运算,进行高级运算时要用expr和bc两个工具
[root@localhost shell]# var1=1 [root@localhost shell]# var2=2 [root@localhost shell]# let result=var1+var2 [root@localhost shell]# echo $result 3
(跟C语言一样,变量可以进行自加或者自减运算,如let var++)
bc是用于数学运算的高级工具,这个计算器包含了大量了选项,可以进行浮点数运算或应用一些高级的函数
[root@localhost shell]# echo 4*0.25 | bc 1.00 [root@localhost shell]# echo 4*0.25|bc 1.00
设置浮点数的精度
[root@localhost shell]# echo "scale = 2;3/8" | bc .37
(这里的答案应该是0.37,但是0没有显示出来,不知道是什么原因,求指教!!!)
计算平方或平方根
[root@localhost shell]# echo "sqrt(100)"|bc 10 [root@localhost shell]# echo "10^3"|bc 1000