条件判断:
如果用户不存在
添加用户,给密码并显示添加车成功
否则
显示如果已经没在,没有添加
2bash中如何实现条件判断
条件判断类型:
整数测试
字符测试
文件测试
条件测试的表达式:
[ expression ]
[[ expression ]]
test expression
整数比较:
-eq:测试两个整数是否相等 比如 $A -eq $B
-ne: 测试两个整数是否不等 不等,为真;相等,为假
-gt:测试一个数是否大于另一个数;大于,为真;否则,为佳;
lt:测试一个数是否小于另一个数;小于;为真;否则,为假
-ge:大于或等于
-le:小于或等于
命令间的逻辑关系:
逻辑与:一个为假,结果一定为假
第一个条件为假时候,第二条件不用再判断,最终结果已经有:
第一个天剑为真时,第二条件必须得判断;
逻辑或:一个为真,结果一定为真
如果用户user不存在,就添加用户user6
! id user6 && useradd user6
id user6 || useradd user6
如果 /etc/inittab文件的行数大于100,就显示好大的文件
[ 'wc -l /etc/inittab | cut -d' ' -f1 ' -gt 100 ] && echo "Large file".
变量名称:
1、只能包含字母、数字和下划线,并且不能以数字开头
2、不应该跟系统中已有的环境变量重名。
3、最好做到见名知义;
如果用户存在,就显示用户已存在,否则,就添加此用户:
id user1 && echo "user1 exists." || useradd user1
如果用户不存在,就添加:否则 ,就显示已经存在
! id user1 && useradd user1 || echo "user1 exists."
如果用户不存在,添加并且给密码:否则,显示其已经存在:
! id user1 && useradd user1 && echo "user1" |passwd -- stdub user1 || echo "user1 exists."
条件判断,控制结构:
if 判断条件 ;then
单分支if语句
statement1
statemtent2
..
f1
双分支的if语句:
if 判断条件;
then
statement1
statement2
else
statement3
statement4
...
fi
#/bin/bash
#
NAME=user1
if id $NAME &> /dev/null; then
echo "$NAME exists."
else
useradd $NAME
echo $NAME |passwd --stdin $NAME $NAME &> /dev/null
echo "Add $NAME finished."
fi
-____________________________
练习 给定一个用户
1、如果其UID为0,就显示此为管理员;
2、否则,就显示其为普通用户
如果 UID为0: 那么
显示为管理员
否则
显示为普通用户
NAME=user16
反引号
USERID=`id -u $NAME`
if [ $USERID -eq 0 ]; then
echo "Admin"
else
echo "common user."
fi
_______
NAME=user16
if[ `id -u $NAME` -eq ]
echo "Admin"
else
echo "common user."
fi
_____
if id $NAME; then