zoukankan      html  css  js  c++  java
  • 《linux就该这么学》第五节课,shell脚本的各种语句!

    第四章shell语句

    (据课本和虚拟机实验排版,借鉴请改动)

                 

    4.2:shell脚本

            脚本包括:脚本声明,脚本注释,脚本内容和命令

            例:#!/bin/bash             //脚本声明

                   #  for  example          //脚本注释

                   pwd                           //脚本命令

                    ls  -al                       //脚本命令

            在脚本开头    #!/bin/bash     表使用bash解释器

            建议脚本以   .sh   结尾区分于其他文件,脚本会从上到下依次执行,直至完毕。

            例:bash   linuxprobe.sh        //执行linuxprobe.sh脚本

            参数:脚本可以接接收用户输入的参数,并判断参数来进行相应的动作

            $0   // 代表脚本本身                                     $1 ,$2 ....        //代表第一个参数,2则代表第二个,以此类推

            $#   // 接收参数的总个数                                     $*               //对应参数的值

            $?  显示上一次命令执行是否成功的返回值    0为成功 非零值则为失败

            

            例图:

           

            条件测试语句:  [  条件表达式  ] 两边须有空格

            

            -d  //是否为目录                                          -e  //是否存在

            -f   //是否为一般文件                                   -r  //是否可读

            -w  //是否可写                                             -x  //是否可执行

            例:[  -d  /etc/fstab  ]           //是否为目录

                    echo  $?                      //检查上一条命令是否成功,会输出1,因为不是目录

              

            &&  “与”,命令A && 命令B   命令A执行成功才会执行B

            前面的命令执行成功后才会执行后面的语句

            ||  “或”       命令A || 命令B     命令A执行失败才会执行B

            前面的命令执行失败后才会执行后面的语句

           ! 叹号表示“非”,取结果的相反值

              

            例:[  -e /dev/cdrom  ] && echo exit

                   [ $user  =  root  ]  &&  echo  root || echo  user    //[空格$user空格=空格root空格]

            整数比较运算符(正常大于小于等于会与系统中的符号有冲突,所以用以下专用操作符)

            -eq    //是否等于                                           -ne    //是否不等于

            -gt     // 是否大于                                            -lt    //是否小于

            -le    //是否等于或小于                                 -ge    // 是否大于或等于

            例:[  `free -m|grep Mem:|awk '{print $4}'` -lt  1024  ]&&echo "内存不足" || echo  “内存充足”  //判断内存

              

            字符运算符

               //比较字符串是否相同                          !=    // 比较字符串是否不同   

            -z    //判断字符串是否为空

    4.3:流程控制语句

            readonly     //将变量定义为只读变量,只读变量不能被改变

            read   将用户输入的值赋值给变量    read  【参数】  变量名

             -p    //参数p可以加入提示语句  

            if条件语句

            单分支、双分支、多分枝结构:

            

            

            

               

            for条件循环语句

            

            while  条件循环语句

            

              

                

               

              (据课本和虚拟机实验排版,借鉴请改动)

    shell脚本复习
    第四章节收尾预习,预习第五章节

  • 相关阅读:
    2019 Multi-University Training Contest 1
    2019江西省省赛
    2019牛客暑期多校训练营 第二场
    母函数
    树形DP
    蓝桥杯-标题:打印图形
    蓝桥杯-标题:史丰收速算
    蓝桥杯-标题:切面条
    蓝桥杯-标题:李白打酒
    蓝桥杯-标题:啤酒和饮料
  • 原文地址:https://www.cnblogs.com/charelee/p/9962462.html
Copyright © 2011-2022 走看看