linux 学习基础4正则表达式

grep 根据模式来搜索文本文件 并将符合模式的行显示出来  grep [options] 模式 FILE

选项 -i  ignore case忽略字符大小写

--colour 用颜色标记被匹配到的字符

-o  只显示被匹配到行

-v  只显示被匹配到的行之外的行

-A number  显示被匹配到行的下面多少行

-B number  显示被匹配到行上面多少行

-C number  显示被匹配到的行上 下 个多少行

-E <=> egrep 扩展的正则表达式

正则表达式的元字符介绍

1 次数匹配 * 表示*前面的字符0-n个

? 表示?前面的字符0-1个

\{1,3\} 表示前面的字符1-3个

\{1\} 表示前面的字符至少有1个

2 匹配字符

. 表示匹配任意单个字符

[] 匹配范围内的任意单个字符

[^]匹配范围外的任意单个字符

[::]字符集合

[[:space:]] 任意一个空白字符

[[:digit:]] 任意一个单个数字

[[:punct:]]任意一个特殊字符

[[:alpha:]]任意一个字母

[[:upper:]]任意一个大写字母

[[:lower:]]任意一个小写字母

[[:alnum:]]任意一个字母和数字

3 位置匹配

^ 行首位置锚定

$ 行尾位置锚定

\< 字符首部位置锚定

\>  字符尾部位置锚定

4反向引用

\(\) 方向引用,\(ab\) 还可以将括号内的内容作为一个整体来进行查找,2则是可以进行反向引用

\1 ,\2

\1 表示引用第一个小括号 包括的内容  \2 则是表示引用第二个 小括号包括的内容

扩展的正则表达式

+ 表示其前面的字符至少一次

{m,n} 表示至少m次方 最多n次方 **注意此处同基本的正则表达式来说少了反斜线

(m) 表示分组  \1表示引用

| 或

C |cat 表示 C 或者cat

(C|c)at 表示Cat 或者cat

找出 /boot/grup/grup.conf 文件中1-255之间的数字

egrep‘\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>‘ /boot/grub/grub.conf

为了表示. 需要用转义字符 \.

时间: 2025-01-12 06:31:26

linux 学习基础4正则表达式的相关文章

新手必看,Linux学习基础

Linux学习基础 1.什么是Linux? 准确的说,是指Linux的kernel(系统的核心程序),其内核版权属于Linus Torvalds,在GPL(GNU General Public License)版权协议下发行, 任何人都可以自由的复制(copy), 修改(change), 套装分发(distribute),销售,但是不可以在分发时加入任何限制, 而且所有原码必须是公开的,所以任何人都可以无偿取得所有执行文件和原代码. 对于Linux用户和系统管理员来说,Linux是指包含Linu

Linux学习-shell利用正则表达式验证邮箱合法性

引文:在今天这个时代,Email已经成为一种重要的通信方式.给导师发邮件,学术研究之间的交流,etc.常常用到Email,然而Email的验证却有点小难度,下面给出一个在Linux下使用shell脚本编写的一个实例. linux中将正则表达式和sed.gawk结合起来,功能非常强大.我说的是真的,没骗你的,好好学吧. 邮箱验证 Email地址的基本格式为: username@hostname 1.username部分模式匹配 username的值可以用字符数子字符以及以下特殊字符: 点号 单破折

Linux学习笔记之正则表达式

不积跬步无以至千里,不积小流无以成江海    --荀子<劝学篇>   不管是看Linux书籍还是视频教程都有说正则表达式相当重要,正确运用正则表达式能够帮助管理系统是减少很多的工作量.实际上,正则表达式是一种处理字符串的方法,通过一些特殊符号的辅助,让用户轻易达到查找.删除.替换特定字符串.可以说,它是Linux基础当中的基础,学完之后一定会大有增益. 一.通配符和正则表达式的区别: 通配符只是bash接口中的一个功能,而正则表达式则是一种字符串处理的表示方式:学习正则表达式之前一定要将bas

Linux学习——基础篇

学习Linux之前,需要首先了解计算机的基础知识.1.二进制.十进制相互转换.156转换为二进制的方法:逐一减去2的次幂方法.(需要自己提前记住:`27=128:26=64;25=32;24=16;23=8;22=4;21=2;2`0=1 )``` 156-128是否够减,如果够,则二进制数值为:128+....156-128剩余28,28-32不够,28-16够减,剩余12.则二进制数为:128+16+...12可以拆分为:8+4那么156转换为二进制数为:128+16+8+4.二进制为2`7

linux 学习基础1

一 linux基础知识 1.1 ls 显示当前目录或者文件 ls -l 查看文件的详细信息 ls -ld 查看目录的详细信息 -rw-r--r--.  1 root root    969 2月  22 2013 yum.conf 第一个字段:文件类型 :linux中文件的类型有如下几类 1 - 二进制文件 d 目录 c 字符设备文件 b块设备文件(block),p (pipe)管道文件,s (scoket)套接字文件,l 链接文件. 第二字符 rw-r--r-- 9个字符每三个一组表示 所有者

linux学习基础篇01--硬件基础

最近看马哥的linux运维视频,虽然我是我做软件测试的,但是最近也对运维方面的东西很感兴趣,因为以前总是写写测试框架代码,谢谢自动化测试代码.发现自己懂得东西很少.我的目标是成为一个测试架构师,可是只是会写写代码的话,永远也达不到这个目标.测试架构师需要在各个计算机领域都有一定深度的了解.所以前一段时间学习mysql调优后,现在开始看马哥的linux视频.学习一下运维的知识.这里有一个很诧异的地方就是,运维需要会的东西是很多的,而且要很深.为什么国内运维人员的工资缺普遍还不如我们测试呢.这是个问

Linux学习 -- Shell编程 -- 正则表达式

正则表达式与通配符 正则 -- 匹配字符串 -- 包含匹配     grep.awk.sed等 通配符 -- 匹配文件名 -- 完全匹配  ls.find.cp等 基础正则表达式

Linux学习-09-学习正则表达式-1

grep进阶 截取:dmesg(列出讯息) |grep '内容' -A 后面加数字 after 后面几行 -B 后面加数字 befor后面几行 寻找regular_express.txt 中的'the'行 cat regular_express.txt |grep 'the' grep 'the' regular_express.txt grep -nv (加行号,反选)'the' regular_express.txt grep -ni (加行号,不区分大小写)'the' regular_ex

linux学习-grep使用正则表达式示例

在linux上使用grep配合正则表达式可以产生强大的搜索的效果,由于正则表达式中含有较多的特殊字符,所以结合grep时,最好使用单引号将表达式括起来,以免造成错误.首先创建一个文件RegExp.txt,文本内容如下所示: --------TEXT BEGIN------------- good morining teacher hellp world is as script gold sunshine looks beautiful golden time files god belss m