您的位置:首页 > 运维架构 > Shell

bash脚本编程之二 条件判断

2016-02-01 11:25 597 查看
bash中如何实现条件判断?
条件测试类型:
整数测试
字符测试
文件测试

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

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

-lt:测试一个数是否小于另一个数;
-ge:大于或等于
-le:小于或等于

命令间逻辑关系:
逻辑与:&&
第一个条件为假时,第二条件不再执行
第一个条件为真时,第二条件必须执行
逻辑或:||

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

如果用户存在,就显示用户已存在;否则,就添加此用户;
id user1 && echo "user1 exists" || useradd user1

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

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

练习:
给定一个用户:
1、如果其UID为0,就显示此为管理员
2、否则,就显示其为普通用户

条件判断,控制结构

if 判读条件;then
fi

提示:“引用”一个命令的执行结果,要使用命令引用;比如:Resaults=`wc -l /etc/passwd`
如果想把一个命令的执行状态结果,要直接执行此命令,一定不能引用;比如:if id user1 一句中的id命令就一定不能加引号;

如果想把一个命令的执行结果赋值给某变量,要使用命令引用,比如USERID=`id -u user1`;

shell中如何进行算术运算

A=3
B=6
1、let 算术运算表达式
let C=$A+$B

exit:退出脚本
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: