CentOS中的正则表达式

时间:2021-05-19

支持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'p filename a是一个数字,表示第几行 ,-n 表示我们要打印的行,无关紧要的内容不显示。

# sed -n '2'p 1.txt 显示第二行内容

# sed -n '1,10'p 1.txt 显示1-10行内容

# sed -n '1,$'p 1.txt 显示所有行

#sed -n '/aa/'p 1.txt 打印包含aa的行

添加-e可以实现多种行为

#sed -e '1'p -e '/aabb/'p -n 1.txt 显示第一行和包含aabb的行

查询时,排除某些行

sed '1' d 1.txt 显示所有内容时,排除第一行。

sed '1,3'd 1.txt 排除第一到第三行

总结

以上所述是小编给大家介绍的CentOS中的正则表达式,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章