Linux-shell篇之条件判断

bash中如何实现条件判断?
条件测试类型:
整数测试
字符测试
文件测试

条件测试表达式:
[ expression ]
[[ expression ]]
test expression

整数比较:
-eq:测试两个整数是否相等,比如:$A -eq $B
-ne:测试两个整数是否不等,不等为真,相等为假
-gt:测试一个数是否大于另一个数,大于为真,否者为假
-lt:测试一个数是否小于另一个数,小于为真,否者为假
-ge:大于或等于
-le:小于或等于

命令的逻辑运算:
逻辑与:&&
第一个条件为假时,第二条件不用再判断,最终结果已经有
第一个条件为真时,第二条件必须得判断
逻辑或:||

如果/etc/initab文件的行数大于100,就显示“大文件”,否则显示“小文件”
[ `wc -l /etc/inittab | cut -d’ ’ -f1` -gt 100 ] && echo “Large file.” || echo “Small file.”

如果用户不存在,就添加;否则,显示其已经存在
! id user1 && useradd user1 || echo “user1 exists.”

如果用户不存在,添加并且给密码;否则,显示其已经存在
! id user1 && useradd user1 && echo “user1” | passwd --stdin user1 || echo “user1 exists.”

变量命名规则:
1、只能包含字母、数字和下划线,并且不能数字开头
2、不应该跟系统中已有的环境变量重名,不然会覆盖已有环境变量值
3、最好做到见名知义

条件判断,控制结构:

单分支if语句
if 判断条件;then
statement1
statement2

fi

双分支的if语句:

猜你喜欢

转载自blog.csdn.net/yaoyujie157/article/details/102941531