CentOS中的正则表达式
支持linux正则表达式的工具有:grep:实现查找,sed,awk:都是流式编辑器,可以实现查找和替换,并且把替换的文本输出到屏幕上。
grep工具
grep[-cinvABC]'word'
-c:打印符合要求的行数
-i:忽略大小写
-n:输出符合要求的行及行号。
-v:打印不符合要求的行
-A:后面跟一个数字(有无空格都可以),-A2表示打印符合要求的行以及下面两行
-B:后面跟数字,-B3打印符合要求的行以及上面三行。
-C:后面跟一个数字,-C24打印符合要求的行以及上下各四行
#grep-c'a'1.txt
#grep-A3'a'1.txt
#grep-n'b'1.txt 过滤带有关键词的行,显示行号。
#grep-nv'ab'1.txt 不符合要求的行及行号
#grep[0-9]1.txt 过滤出所有包含数字的行
#grep-v[0-9]1.txt过滤出不包含数字的行
#grep -v'^#'1.txt 过滤掉所有已#开头的行
#grep-v'^#'1.txt|grep-v '^$' 过滤掉所有以空行和以#开头的行($表示结尾,空行可以用^$表示)
sed工具
sed-n'a'pfilename a是一个数字,表示第几行,-n表示我们要打印的行,无关紧要的内容不显示。
#sed-n'2'p1.txt显示第二行内容
#sed-n'1,10'p1.txt显示1-10行内容
#sed-n'1,$'p1.txt 显示所有行
#sed-n'/aa/'p1.txt打印包含aa的行
添加-e可以实现多种行为
#sed-e'1'p-e'/aabb/'p-n1.txt 显示第一行和包含aabb的行
查询时,排除某些行
sed'1'd1.txt 显示所有内容时,排除第一行。
sed'1,3'd1.txt 排除第一到第三行
总结
以上所述是小编给大家介绍的CentOS中的正则表达式,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!