linux系统之shell编程-正則表達式
shell编程正則表達式:
1:元字符 [ ] . * ?
+ ( ) | { } ^ $
2 : [a-z0-9] 表示匹配随意数字和字母的一个
3 : [^a-z] 匹配除了字母的随意一个
4 : ab+c +表示匹配一个或多个+号前面的字符
5 : ab*c *表示匹配没有或多个*号前面的字符
6 : ab?
c ?表示匹配一个?号前面的字符
7 : (ab){2}c 表示匹配两个ab字符的字符。
8 : (ab)*c (ab)+c (ab)?
c 同4,5,6的规则同样。仅仅是匹配全部括号中面的字符。
9:^ab 表示匹配以ab开头的字符, 而[^ab]表示匹配除了字符ab的
10: \<title\> 仅仅匹配title这个单词,以空格或换行作为分隔符
linux中的 fgrep grep egrep 命令 grep (global research regular expression and printing)
fgrep 命令不使用正則表達式,将全部字符当作普通字符匹配在查找的时候
grep 命令仅仅支持普通的正則表達式,对扩展的正则不支持
egrep 命令支持全部的扩展正則表達式。
grep 的几种常见使用方法:
1: grep -v 匹配不包括在正則表達式内的字符 grep -v '^ab' /etc/passwd 不以ab开头的字符
2: grep --color 将匹配的字符用颜色标记出来
3: grep -o 仅仅显示匹配的字符,在过滤之后。
4: grep -A2 'abc' /etc/passwd 显示匹配字符以及匹配字符行的上面两行
5: grep -B2 'abc' /etc/passwd 显示
匹配字符以及匹配字符行的以下两行
6: grep -C3 'abc' /etc/passwd
显示 匹配字符以及匹配字符行的以下和上面两行
7: grep -f /etc/shadow /etc/passwd 表示依据/etc/shadow文件里的内容匹配/etc/passwd中包括
/etc/shadow中的字符
8: grep -E 表示支持扩展正則表達式,等同于 egrep
9:
linux系统之shell编程-正則表達式的更多相关文章
- 鸟书shell 学习笔记(二) shell中正則表達式相关
通配符与正則表達式的差别 通配符是bash原生支持的语法,正則表達式是处理字符串的一种表示方式, 正則表達式须要支持的工具支持才干够 语系设置 : export LANG=C grep alias 设 ...
- shell文本过滤编程(一):grep和正則表達式
[版权声明:转载请保留出处:blog.csdn.net/gentleliu.Mail:shallnew at 163 dot com] Linux系统中有非常多文件,比方配置文件.日志文件.用户文件等 ...
- Linux正則表達式-反复出现的字符
星号(*)元字符表示它前面的正則表達式能够出现零次或多次.也就是说,假设它改动了单个字符.那么该字符能够在那里也能够不在那里,而且假设它在那里,那可能会不止出现一个.能够使用星号元字符匹配出如今引號中 ...
- 轻松学习之Linux教程六 正則表達式具体解释
本系列文章由@超人爱因斯坦出品.转载请注明出处. 作者:超人爱因斯坦 个人站点:http://www.hpw123.net 文章链接:http://hpw123.net/a/L ...
- shell脚本学习笔记 (正則表達式)
正則表達式一般有三个部分组成,他们各自是:字符类,数量限定符,位置限定符. 规定一些特殊语法表示字符类.数 量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是正則表達式(Regu ...
- grep 和 sed:linux经常使用工具 & 基本正則表達式
grep 见链接:http://www.cyberciti.biz/faq/grep-regular-expressions/ sed參考文章:http://www.thegeekstuff.com ...
- Linux正則表達式-定位元字符
有两个元字符用于指定字符串出如今行首或行末.脱字符(^)是指示開始的单字符正則表達式.美元符号($)是指示行结尾的单字符的正則表達式.这些通常称为"定位符",由于它们将匹配限定在特 ...
- js正則表達式语法
1. 正則表達式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...
- JAVA中正則表達式总结
昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...
随机推荐
- biological clock
'''this application aimed to cauculate people's biological block about emotional(28), energy(23),int ...
- day12-图
- 剑指Offer(书):链表的倒数第K个节点
题目:输入一个链表,输出该链表中倒数第k个结点. 分析:要注意三点:链表为空:链表个数小于k:k的值<=0; public ListNode FindKthToTail(ListNode hea ...
- ios开发中遇到的文件和字符的问题大总结
我今天遇到的NSString问题 今天遇到一个字符串空指针问题,让我明白了许多 其实我们定义一个NSString * string,其实是定义了一个字符串指针,现在string没有指向任何地方,我们必 ...
- 误删除innodb ibdata数据文件-之恢复
今天在群里看到有人说不熟悉innodb把ibdata(数据文件)和ib_logfile(事务日志)文件误删除了.不知道怎么解决.当时我也不知道怎么办.后来查阅相关资料.终找到解决方法.其实恢复也挺简单 ...
- C# 字符串型转数字型
// 当需要将字符串格式的数字转为数字时候,我们会用到的函数为Convert.ToDouble(),// 然而当你的字符串为49,9时,由于包含了逗号,函数会将逗号忽略,直接转为499,// 所以我们 ...
- mac 打开apach 但无法访问localhost的解决方法
y由于mac系统默认自带了PHP和Apach, 所以可以通过 sudo apachectl start 直接启动apach服务, 此时在浏览器输入http://localhost,会出现It work ...
- Linux 查看端口占用并杀掉进程
1. 查看端口号占用情况: netstat -apn|grep 11305 tcp 0 0 10.65.42.27:80 172.22.142.20: ...
- MAC生成公钥私钥
前言 需要开发者在本地上使用openssl来生成私钥和公钥 由于mac 自带openssl工具,所以不用像windows那样要下载安装openssl工具 步骤 1.创建一个文件夹,终端进入该文件夹 c ...
- [luoguP2053] [SCOI2007]修车(最小费用最大流)
传送门 网络流的建图真的好难! 将一个点拆分成多个点的思想还需要加强. 题解 代码和题解中的图略不一样. #include <queue> #include <cstdio> ...