学习笔记-5.3壳编程2

5.3壳编程2


条件判断:

,,如果用户不存在

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

,,否则

,,,,显示如果已经存在,没有添加


bash中如何实现条件判断?

条件测试类型:

,,整数测试

,,字符测试

,,文件测试


条件测试的表达式:

,,[expressopm]前后一定有空格

,,“expressopm”

,,测试表达式


整数比较:

,,情商:测试两个整数是否相等;相等为0比真如一个情商B美元

,,- ne:测试两个整数是否不等;不等,为真0,相等,假

,,gt:测试一个数是否大于另一个数:大于,为真

,,lt:测试一个数是否小于另一个数

,,通用电气:大于或等于

,,勒:小于或等于


命令间的逻辑关系:

,,逻辑与:,,

,,,,第一个条件为假时,第二条件不用再判断,最终结果已经有:

,,,,第一个条件为真时,第二条件必须得判断

,,逻辑或:| |


id user1,比;/dev/null,,回声“你好,学生。”

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

!id user6,,useradd user6

id user6 | | useradd user6


变量名称:只能包含字母,数字和下划线,并且不能以数字开的头,不应该跟

,,,,,系统中已有的环境变量重名

,,,,,最好做到见名知义纳米second.sh

# !/bin/bash

行=皐c - l/etc/inittab”

# echo $行


FINLINES=癳cho $ |行切- d”“f1”

# echo $ FINLINES


[$ FINLINES gt 100],,回声“/etc/inittab文件。”,

, | |,呼应“/etc/inittab文件是一个小。”,


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

, id user1,,回声“user1的存在。”| | useradd user1

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

!id user1,,useradd user1 | |,呼应“user1存在。”

如果用户不存在,添加并且给密码,否则,显示其已经存在

!id user1,,useradd user1,,回声“user1”| passwd——stdin user1 | |

,回声“user1的存在。”


练习,写一个脚本,完成以下要求:

1添加3个用户user1、user2, user3;但要先判断用户是否存在,

,不存在而后再添加

2添加完成后,显示一共添加了几个用户:当然,不能包括因为事先

,存在而没有添加的

3最后显示当前系统上共有多少个用户

, nano adduser.sh

# !/bin/bash

!id user1,比;/dev/null,,useradd user1,,回声“user1”| passwd 

,——stdin user1,比;/dev/null | |回声“user1存在。”

!id user2,比;/dev/null,,useradd user2,,回声“user2”| passwd 

,——stdin user2,比;/dev/null | |回声“user2存在。”

!id user3,比;/dev/null,,useradd user3,,回声“user3”| passwd 

,——stdin user3,比;/dev/null | |回声“user3存在。”


用户=皐c - l/etc/passwd |削减- d: f1的

echo " $用户用户。”


如果UID为0:那么

,,显示为管理员

否则

,,显示为普通用户


名称=user16

用户id=癷d - u $名称”(~下的反引号)命令引用表示命令的执行结果

如果(USERID eq 0美元);然后

,回声“Admin”

其他,回声“普通用户”。

fi

反引号引用表示命令的执行结果

没有反引号表示命令的执行状态(是否成功)


如果id名称;美元然后


练习写一个脚本,完成以下要求:

给定一个用户:

,1如果其UID为0,就显示此为管理员

,2否则,就显示其为普通用户纳米third.sh

# !/bin/bash

# NAME=user1


用户id=癷d - u $名称”

(USERID eq 0美元),,回声“Admin”| |回声“普通用户”。


条件判断,控制结构:

单分支如果语句

如果判断条件,然后(然后写下一行,分号可以省略)

,,语句1

,,statement2

,,……

fi


双分支的如果语句:

如果判断条件;然后

,,语句1

,,statement2

,,其他…

,,statement3

,,statement4 

,,……

fi


纳米tt.sh

# !/bin/bash

# NAME=user1

如果id名称和美元比;/dev/null;然后

,,回声”美元的名字存在。”

其他,美元,useradd名称

,,echo $名字| passwd, stdin,美元的名字,在/dev/null

,美元,呼应“添加名字完了。”

学习笔记-5.3壳编程2