RHCSA-A12.在文件中查找指定的字符串
Posted 白-胖-子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RHCSA-A12.在文件中查找指定的字符串相关的知识,希望对你有一定的参考价值。
红帽RHCE考试上午-RHCSA(RH134)
servera.example.com 任务
12. 查找字符串
任务要求
- 查找文件/usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串ng 的所有行
- 并将所有这些行的内容放到文件/root/list 中,/root/list 不得包含空行
完成步骤
- 考试时/root/list这个文件应该是没有的,可以通过重定向或者touch生成
cat /usr/share/xml/iso-codes/iso_639_3.xml | grep ng > /root/list
cat /root/list # 检查
- 查找文件/usr/share/rhel.xml 中包含字符串re 的所有行。将所有这些行的副本按原始顺序放在文件/root/files 中。
grep re /usr/share/rhel.xml
grep re /usr/share/rhel.xml > /root/list
考查的知识点
grep文本搜索工具
- 作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行
- 模式:由正则表达式字符及文本字符所编写的过滤条件
grep [OPTIONS] <查找匹配的内容> [FILE...]
grep常用选项Options
-color=auto 对匹配到的文本着色显示
-m # 匹配#次后停止
-v 显示不被pattern匹配到的行,即取反
-i 忽略字符大小写
-n 显示匹配的行号
-c 统计匹配的行数
-o 仅显示匹配到的字符串
-q 静默模式,不输出任何信息
-A # after, 后#行
-B # before, 前#行
-C # context, 前后各#行
-e 实现多个选项间的逻辑or关系,如:grep –e ‘cat ' -e ‘dog' file
-w 匹配整个单词
-E 使用ERE,相当于egrep
-F 不支持正则表达式,相当于fgrep
-f file 根据模式文件处理
-r 递归目录,但不处理软链接
-R 递归目录,但处理软链接
- 常规用法过滤关键词
grep root /etc/passwd
grep "USER" /etc/passwd
grep 'USER' /etc/passwd
grep `whoami` /etc/passwd
- 过滤配置文件非注释和非空行
[root@centos8 ~]#grep -v "^#" /etc/profile | grep -v '^$'
[root@centos8 ~]#grep -v "^#\\|^$" /etc/profile
[root@centos8 ~]#grep -v "^\\(#\\|$\\)" /etc/profile
[root@centos8 ~]#grep -Ev "^(#|$)" /etc/profile
[root@centos8 ~]#egrep -v "^(#|$)" /etc/profile
[root@centos6 ~]#egrep -v '^(#|$)' /etc/httpd/conf/httpd.conf
- 取两个文件的相同行 其实是以f1中的行为过滤条件到f2中取出行进行过滤
grep -f /data/f1.txt /data/f2.txt
以上是关于RHCSA-A12.在文件中查找指定的字符串的主要内容,如果未能解决你的问题,请参考以下文章