shell脚本之正则表达式

本文介绍了Linux shell脚本中的正则表达式基础,包括定义、组成和作用,以及如何使用grep、cut、sort、uniq和tr等命令配合正则表达式进行文本处理。通过实例演示了这些命令的用法,如grep用于搜索匹配行,cut进行列表截取,sort进行排序,uniq去除重复行,tr进行字符替换和删除。
摘要由CSDN通过智能技术生成

目录

一、正则表达

1.1 正则表达式定义

1.1.1正则表达式组成

1.1.2 作用

1.2 基础正则表达式元字符

二、正则表达式相关命令

2.1 grep命令

2.2 cut :列表截取工具

2.3 sort 排序工具

2.4 uniq :去重复工具

2.5 tr 修改工具

总结


引言: 学会按需求查找,展示东西可以极大的节省时间

1.1 正则表达式定义

正则表达式,又称正规表达式、常规表达式

使用字符串来描述、匹配一系列符合某个规则的字符串

1.1.1正则表达式组成

普通字符:
大小写字母、数字、标点符号及一些其他符号
元字符:
在正则表达式中具有特殊意义的专业字符

1.1.2 作用

正则表达式通常用于判断语句中,用来检查某一字符串
是否满足某一格式

1.2 基础正则表达式元字符

基础正则表达式是常用的正则表达式部分

除了普通字符外,常见到以下元字符

符号 含义
\ 转意字符,!,\n等
^ 匹配字符串结束的位置
$ 匹配字符串结束的位置
. 匹配除\n之外的任意的一个字符
* 匹配前面子表达式0次或者多次
[list] 匹配list列表中的一个字符
[^list] 匹配任意不在list列表中的一个字符
{n,m} 匹配前面的子表达式n到m次,有{n},{n,}, {n,m}
+ 匹配前面子表达式1次以上
匹配前面子表达式0次或者1次
() 将括号中的字符串作为一个整体
l 以或的方式匹配字条串

Linux中常用的有两种正则表达式引擎
基础正则表达式 :BRE
扩展正则表达式:ERE

二、正则表达式相关命令

2.1 grep命令

简介:
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

Unix的grep家族包括 grep、egrep和fgrep 。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。

grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2。我们利用这些返回值就可进行一些自动化的文本处理工作。

格式:
grep 《选项》……查找条件 目标文件

常用选项与说明

选项 说明
V 打印grep的版
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值