一. shell编程总结:
定义变量
shell语言是非类型的解释型语言,不象用C++/JAVA语言编程时需要事先声明变量.给一个变量赋值,实际上就是定义了变量.
由于shell程序的变量是无类型的,所以用户可以使用同一个变量时而存放字符时而存放数字。
在linux支持的所有shell中,都可以用赋值符号(=)为变量赋值.
如:
abc=9 (bash/pdksh不能在等号两侧留下空格 )
如:
name=abc (bash/pdksh)
在变量赋值之后,只需在变量前面加一个$去引用.
如:
echo $abc
变量类型
字符集变量
字符集变量的声明方法是用双引号
如:
abc=”how are you ” (将字符集 how are you 赋值给abc)
echo $abc
输出结果:how are you
引用系统变量赋值
如:
abc=”$LOGNAME,how are you”; ($LOGNAME 存储了系统登录用户名)
echo $abc
输出结果:root,how are you
字符串相加
abc=” how are you”” root”
echo $abc
输出结果:how are you root
数字常量定义
十进制:直接写数字
如:a=12 #a是十进制12
八进制:在前面加0
如:a=012 #a是八进制12
十六禁止:在数字前加0x
如:a=0x12 #a是十六进制12
运算符与表达式
运算符
算术运算符
+ 加法
- 减法
* 乘法
/ 除法
** 幂运算
let "z=5**3"
echo "z = $z" # z = 125
% 取模
+= 加等于(通过常量增加变量)
如:let "var += 5" #var将在本身值的基础上增加5
-= 减等于
*= 乘等于
如:let "var *= 4"
/= 除等于
%= 取模赋值,
算术操作经常使用expr或者let表达式
逻辑运算符
|| 逻辑或
&& 逻辑与
数值表达式
判断语句
Int1 -eq int2 #当int1等于int2时,返回True
Int1 -ge int2 #当int1大于/等于int2时,返回True
Int1 -le int2 #当int1小于/等于int2时,返回True
Int1 -gt int2 #|当int1大于int2时,返回True
Int1 -ne int2 #当int1不等于int2时,返回True
二.
1. for循环方式
2. while循环方式
3. until循环方式