正则表达式&shell编程基础

1.基础正则表达式

  1.1正则表达式与通配符

    

 

   1.2基础正则表达式

   

 

   案例1:

   “*”前一个字符匹配0次,或任意多次

   

 

    案例2:"."匹配除了换行符外任意一个字符

    

 

    案例3:“^”匹配行首,“$”匹配行尾

    

 

    案例4:“[ ]”匹配中括号中指定的任意一个字符,只匹配一个字符

     

    

 

 

 

 

    案例5:匹配除中括号的字符以为的任意一个字符

    

 

    案例六:转义符

    

 

    案例七:\{n\}表示其前面的字符恰好出现n次

    

    案例八:\{n,m\}表示前面字符至少出现n次,最多出现m次。

    

 

 

 

2.字符截取命令

  2.1 cut字段提前命令

    

    案例1:

    :

 

 

    案例2:cut一般和grep联合使用,例如批量删除用户(在/etc/passwd文件下提取user1/user2/user3)

      

 

      

 

   cut命令的局限性

    

 

   

 

      

  2.2 printf命令

    

      输出格式

      

         

         

 

 

          print和printf的区别

         

  2.3 awk命令

    2.3.1cut命令的局限性

   

 

 

    2.3.2 awk命令(默认识别的分隔符是制表符和空格)

  

    案例:

     

 

    案例1:打印第二列和第四列

    

 

    案例2:截取指定列

    

 

     

    案例3:提取指定数字

    

 

 

     案例4:BEGIN

    

 

 

     案例5:FS内置变量

      

 

 

 

 

    案例6:END

    

 

    案例7:关系运算符

    

     

  2.4 sed命令

 

 

  格式:

  

  动作:

   

      案例:

      

      查看文件的第二行

      

 

      删除第二行到第三行数据

      

 

      追加和插入

      

 

       替换

      

 

       修改源文件数据-i

      

 

       允许多个条件执行

      

3.字符处理命令

  3.1 排序命令sort

  

 

    案例:

     

 

      

   3.2统计字符命令wc

      

4.条件判断

   4-1按照文件类型进行判断

  

 

  两种格式判断文件是否在

  

 

  案例:判断普通文件是否存在

   

 

 

  4-2安装文件的权限进行判断

  

  案例:

  

 

  

  4-3 两个文件之间进行比较

  

 

  案例:

  

 

   

4-4两个整数之间的比较

  

  案例:

  

 

 4-5字符串的判断

  

 

   案例1:判断字符串是否为空

  

 

  案例2:判断2个字串是否相等

  

 

  

 4-6重判断

  

 

   案例

     

 

5.流程控制

  5.1.1 单分支if条件语句

   

    单分支条件语句需要注意几个点

    

 

 

    案例1:判断分区使用率

    

 

    5.1.2 双分支if条件语句

    

 

    案例:备份mysql数据库

    

    

 

 

   

    案例:判断apache是否启动

    

    

 

 

   5.1.3 多分支if条件语句

     

 

  案例:判断用户输入的是什么文件

  

   

  5.2 case语句

     多分支case条件语句

    

 

   格式:

    

 

   案例:

    

 

 

  5.3 for循环

    语法一:

      

    案例:

      

 

     案例:批量解压缩

      

 

     案例2:看有几个.sh文件,并打印

      

 

 

   语法二:

    

 

    案例:从1加到100

    

 

    

    

  5.4 while循环

    

    格式:

      

 

    案例1到100的和

    

 

 

 5.5 until循环

    

 

posted @ 2019-12-19 17:19  Howie_Tang  阅读(199)  评论(0编辑  收藏  举报