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循环
