Linux-Shell内容复习-Shell脚本条件判断、流程控制笔记

条件判断

一、判断文件类型

   1)、参数选项:

         -d :判断该文件是否存在以及是否为目录,是目录为true

         -e :判断该文件是否存在,存在为true

         -f :判断该文件是否存在以及是否为普通文件,普通文件为true

          … :还有其他参数判断块设备文件、管道文件这些

   2)、用法:

       1、第一种:

             test 选项参数 [目录或文件路径] ($?表示回去上一条命令的执行是否正确,0表示正确)

                                      

       2、第二种:

                 [ 选项参数 文件或目录路径]

                          

二、文件之间的判断

    1)、语法:文件1 选项参数 文件2

       1、选项参数:

              -nt(-ot) :文件1修改时间是否比2新(旧)

              -ef :两个文件的Inode号是否一致,判断是否为同一文件

                    

三、文件权限判断

    1)、语法 :选项参数 文件名

    2)、选项参数:

            -r :判断判断文件是否存在以及是否有r权限

            -w(-x) :w权限(x权限)

            …… :还有其他权限,例如判断SUID权限这些

四、字符串判断

    1)、语法:选项参数 字符串

    2)、选项参数:

           -z :判断是否为空(空为true)

           -n :判断是否非空

            == :判断两个字符串是否相等

            != :不等

五、整数之间比较

    1)、语法:整数1 选项参数 整数2

    2)、选项参数:

         -eq :相等(为true)、-ne :不等、-gt :1大于2、-lt :1小于2、-ge :1大于等于2、-le :1小于等于2

六、逻辑判断

    1)、语法:判断条件1 选项参数判断条件2

      2)、选项参数:

              -a :逻辑与

              -o :或

              ! :非(取反),直接放在一个判断之前

 

流程控制

一、if

    1)、单个if判断

         1、定义语法:

            定义方式一:

                 if [ 表达式 ];then

                     处理逻辑

                    fi

             定义方式二:

                     if [ 表达式 ]

                            then 处理逻辑

                     fi

           2、案例:(注意一些空格的处理)

            

          

    2)、多个else (三个及以上多了 elif)

                           

二、case

  1)、语法:

              case $变量名 in

                     “value1”)

                            处理逻辑1

                     ;;

                     “value2”)

                            处理逻辑2

                     ;;

                     *)

                            不再以上定义的处理逻辑

                     ;;

               esac

    2)、案例:

                           

三、for

    1)、语法:

         1、方式1:

                     for 变量名 in 值1 值2 …

                            do

                                   处理逻辑

                            done

        2、案例

                                   

        变量定义一般别乱写空格

    2)、语法:

         1、方式2

              for (( 初始值;循环控制条件;变量变化 ))

               do

                     处理逻辑

              done

        2、案例:

              

  

    3)、语法:      

           1、方式3 (方式1的特殊形式):

                     for 变量名 in $(shell命令)

                            do

                                   处理逻辑

                            done

          2、案例:

                                

四、while/util

        while条件判断为true则再次循环,until是条件判断为false则再次循环

    1)、语法:

              while [ 条件判断式 ]

                     do

                            处理逻辑

                     done

    2)、案例:

                             

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值