正则表达式&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循环

    

原文地址:https://www.cnblogs.com/healy/p/11557806.html