• shell脚本练习及小总结


    写4个脚本,要求如下

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

    vim     .sh 结尾的文件

     修改username 测试不同用户

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

     

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


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

     

     拓展

    1. 字符串运算符:
    2. $ 检测字符串是否为空,不为空返回 true
    3. = 检测两个字符串是否相等,相等返回 true
    4. != 检测两个字符串是否不相等,不相等返回 true
    5. -z 检测字符串长度是否为0,为0返回 true
    6. -n 检测字符串长度是否不为 0,不为 0 返回 true
    1. 关系运算符
    2. -eq   检测两个数是否相等,相等返回 true。     (equal
    3. -ne   检测两个数是否不相等,不相等返回 true。         (unequal)
    4. -gt   检测左边的数是否大于右边的,如果是,则返回 true。 (greater than
    5. -lt   检测左边的数是否小于右边的,如果是,则返回 true。 (less than
    6. -ge   检测左边的数是否大于等于右边的,如果是,则返回 true
    7. -le   检测左边的数是否小于等于右边的,如果是,则返回 true
    1. 文件测试符
    2. -r 检测文件是否可读,如果是,则返回 true
    3. -w 检测文件是否可写,如果是,则返回 true
    4. -x 检测文件是否可执行,如果是,则返回 true
    5. -s 检测文件是否为空(文件大小是否大于0),不为空返回 true
    6. -e 检测文件(包括目录)是否存在,如果是,则返回 true
    7. -d 检测文件是否是目录,如果是,则返回 true
    8. -f 检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回 true
    1. 逻辑运算符
    2. && 是逻辑“与”,只有当前面语句执行成功的时候才会执行后面的命令。
    3. || 是逻辑“或”,只有当前面语句执行失败的时候才会执行后面的命令。
    4. ! 是逻辑“非”,代表对逻辑测试结果取反值,之前是正确则变错误,错误则变正确。

  • 相关阅读:
    PIL如何批量给图片添加文字水印?
    【软考-中级】系统集成项目管理工程师-质量管理历年案例
    一种简易的Nor flash存储数据机制
    Nodejs 第四十一章(项目架构MVC,IoC,DI)
    Java知识梳理 第八章 面向对象编程(中级部分)
    C++:多态与虚函数,纯虚函数
    [NISACTF 2022]join-us - 报错注入&无列名注入
    RenderTextureFormat.Depth和RenderTextureFormat.Shadowmap两种格式的深度图
    D. Binary String To Subsequences
    JSP技术基础(1)(标准语法)
  • 原文地址:https://blog.csdn.net/Shakespeare_i/article/details/126943128