2021-05-08

本文介绍了如何在Linux环境中结合Shell脚本使用正则表达式进行文本处理。内容涵盖基础正则表达式的应用,如查找特定字符、行首匹配,以及扩展正则表达式的高级功能,如重复字符查找、组字符匹配等。同时讲解了sed和awk这两个强大工具的用法,包括查询、删除和替换文本。这些技能对于日常的系统管理和自动化任务非常实用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 在实际生产环境中,Shell脚本通常与正则表达式,文本处理工具结合使用。本章我们介绍正则表达式与Linux系统中两个功能强大的文本处理工具。

基础正则表达式的使用
(准备一个名为test.txt的测试文件)
(1)查找特定字符(‘-n表示显示行号’‘-i表示不区分大小写’)
在这里插入图片描述

在这里插入图片描述

若反向选择,查找不包含‘the’字符的行,则需要通过‘-n’实现
在这里插入图片描述

(2)用[]来查找字符([io]表示匹配‘i’‘o’)
在这里插入图片描述

查找重复字符“oo”
在这里插入图片描述

查找oo前面不是“w”的字符串,通过反向选择“[^]”实现

在这里插入图片描述

“oo”前面不存在小写字母
在这里插入图片描述

查找包含数字的行
在这里插入图片描述

(3)查找以‘the’为行首的行
在这里插入图片描述

查询以小写字母开头的行
在这里插入图片描述

查询以大写字母为开头的行
在这里插入图片描述

查询不以字母为开头的行
在这里插入图片描述

^在[]内外的作用不一样,在[]里表示反向选择,在[]外表示定位行首。
查找‘w??d’的字符
在这里插入图片描述

查询至少两个以上oo
在这里插入图片描述

(4)显示行号和匹配关键字符
在这里插入图片描述

(5)显示行号过滤指定开始的字符
在这里插入图片描述

(6)匹配任意单个字符显示行号
在这里插入图片描述

(7)匹配指定字符内容
在这里插入图片描述

(8)转义字符使用过滤IP地址
在这里插入图片描述

2.扩展正则表达式的应用
(1)查找重复字符
在这里插入图片描述

(2)匹配任意前一个字符串

在这里插入图片描述

(2)使用或者查找字符

在这里插入图片描述

(3)查找组字符
在这里插入图片描述

3、基础正则表达式和扩展正则表达式区别
sed基本应用
(1)查询符合条件的文本
查询所有内容
在这里插入图片描述

查询地三行
在这里插入图片描述

查询3-5行
在这里插入图片描述

查询所有奇数行(n表示下一行)
在这里插入图片描述

查询所有偶数行(n表示下一行)
在这里插入图片描述

查询1-5行之间的奇数行
在这里插入图片描述

查询第十行到末尾的偶数行
在这里插入图片描述

查询包含the的行
在这里插入图片描述

查询从第四行到第一个包含the的行
在这里插入图片描述

查询包含the的行所在的行号,=用来查询行号
在这里插入图片描述

查询以PI开头的行
在这里插入图片描述

查询包含单词wood的行,<,>代表单词边界
在这里插入图片描述

(2)删除符合条件的文本
删除第三行
在这里插入图片描述

删除以小写字母开头的行
在这里插入图片描述

(4)替换符合条件的文本
替换数据将yun替换为YUN在这里插入图片描述

在IP地址前边添加注释行
在这里插入图片描述

将第一行和第三行数据迁移到17行后面
在这里插入图片描述

4、awk的应用
(1)显示文件内容
在这里插入图片描述

(2)查看第一列和第二列数据
在这里插入图片描述

(3)第一列和第二列数据使用#号作为分隔符

在这里插入图片描述

(4)实现第一列数据
在这里插入图片描述

(5)查看第一行和第二行
在这里插入图片描述

(5)显示第七列数据
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值