shell脚本练习及小总结

写4个脚本,要求如下

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

vim     .sh 结尾的文件

shell脚本练习及小总结_第1张图片

 修改username 测试不同用户

 二.断当前系统上是否有用户的默认shell为bash;
如果有,就显示有多少个这类用户;否则,就显示没有这类用户;

 shell脚本练习及小总结_第2张图片

shell脚本练习及小总结_第3张图片

三.给定一个文件,比如/etc/inittab
判断这个文件中是否有空白行;
如果有,则显示其空白行数;否则,显示没有空白行。

shell脚本练习及小总结_第4张图片


四.给定一个用户,判断其UID与GID是否一样
如果一样,就显示此用户为“good guy”;否则,就显示此用户为“bad guy”

shell脚本练习及小总结_第5张图片 

 拓展

字符串运算符:
$  检测字符串是否为空,不为空返回 true。
=  检测两个字符串是否相等,相等返回 true。
!= 检测两个字符串是否不相等,不相等返回 true。
-z 检测字符串长度是否为0,为0返回 true。
-n 检测字符串长度是否不为 0,不为 0 返回 true
关系运算符
-eq   检测两个数是否相等,相等返回 true。              (equal)
-ne   检测两个数是否不相等,不相等返回 true。          (unequal)
-gt   检测左边的数是否大于右边的,如果是,则返回 true。 (greater than)
-lt   检测左边的数是否小于右边的,如果是,则返回 true。 (less than)
-ge   检测左边的数是否大于等于右边的,如果是,则返回 true。
-le   检测左边的数是否小于等于右边的,如果是,则返回 true。
文件测试符
-r  检测文件是否可读,如果是,则返回 true。
-w  检测文件是否可写,如果是,则返回 true。
-x  检测文件是否可执行,如果是,则返回 true。
-s  检测文件是否为空(文件大小是否大于0),不为空返回 true。
-e  检测文件(包括目录)是否存在,如果是,则返回 true。
-d  检测文件是否是目录,如果是,则返回 true。
-f  检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回 true。
逻辑运算符
&&  是逻辑“与”,只有当前面语句执行成功的时候才会执行后面的命令。

||  是逻辑“或”,只有当前面语句执行失败的时候才会执行后面的命令。

!   是逻辑“非”,代表对逻辑测试结果取反值,之前是正确则变错误,错误则变正确。

你可能感兴趣的