脚本 linux 不等,linux脚本之条件判断

用脚本完成以下任务添加5个用户,user1,user2.。。。。user5

每个用户的密码同用户名,而且要求,添加密码后不显示passwd命令的执行结果

每个用户添加完成后,都要显示用户某某已成功添加

useradd user1

echo  “user1“ | passwd –stdinuser1 &>/dev/null

echo  “add user1 successfully”

条件判断:

如果用户不存在

添加用户,给密码并显示添加成功;

否则

显示用户已存在,不添加

bash中如何实现条件判断?

条件判断类型:

整数判断

-eq:判断两个整数是否相等;为真,等为假比如 $A –eq $B 返回值为0表示成功

844db35bd5480c9e92fb9eda8ef40bb3.png

-ne:判断两个整数是否不等;不等为真 相等为假

-gt:判断一个数是否大于另一个书;大于,为真;否则为假

-lt:判断一个数是否小于另一个书;小于,为真;否则为假

-ge:大于或等于

-le:小于或等于

字符判断

文件判断

条件判断的表达式:

[expression ]

[[xpression ] ]

testexpression

命令间的逻辑关系:

逻辑与:&&(第一个条件为假时,第二个条件不用再判断)

逻辑或:||(第一个条件为真时,第二个条件必须判断)

如果用户user1不存在,就添加用户user1

! id user1  && useradduser1(!表示取反,真的变为假的)

id user1 || useradd  user1

变量名称:只能包含字母,数字和下划线,并且不能以数字开头,不应该和系统中已有的环境变量重名;

如果用户存在,显示用户已存在,否则,就添加此用户。

id user1 && echo “user1 exists.” ||useradd user1

如果用户不存在就添加,否则显示已存在

! id user1 && useradd user1 || echo“ user1 exists.”

使用脚本完成以下任务:添加3个用户user1,user2,user3;要求先判断用户是否存在,不存在则添加

显示但前系统上共有多少个用户

Vim adduser.sh

#!/bin/bash

! id user1&> /dev/null && useradd user1 && echo “user1” | passwd –-stdinuser1 &> /dev/null || echo “user1 exists”

USERS=`wc –l/etc/passwd | cut –d: -f1`

echo “$USERS users.”

使用脚本完成以下任务:

给定一个用户:1.如果其UID为0,就显示此用户为管理员

2.否则,就显示为普通用户

vim xxx.sh

#!/bin/bash

NAME=user1

USERID=`id –u $NAME`

[ $USERID –eq 0 ]&& echo “admin” || echo “common user.”

条件判断,控制结构:

单分支if语句

if 判断条件 ; then

statement1

statement2

fi

双分支if语句:

if 判断条件; then

statement1

statement2

else

statement3

statement4

fi

例1

#!/bin/bash

NAME=user1

if id$NAME &> /dev/null;  then

echo “$NAME exists.”

else

echo “$NAME not exists.”

Fi

例2

#!/bin/bash

NAME=user1

if id$NAME &> /dev/null;  then

echo “$NAME exists.”

else

useradd $NAME

echo $NAME | passwd –-stdin $NAME&> /dev/null

echo “add  $NAME finished.”

fi

例3

给定一个用户:1.如果其UID为0,就显示此用户为管理员

2.否则,就显示为普通用户

#!/bin/bash

NAME=user1

USERID=`id–u $NAME`

if [$USERID –eq 0 ]; then

echo “admin”

else

echo “common user”

fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值