Grep工具应用实例:

1、只在目录中所有的.php和.html文件中递归搜索字符”main()”
  • grep "main()" . -r --include *.{php,html}
2、在搜索结果中排除所有README文件
  • grep "main()" . -r --exclude "README"
3、在搜索结果中排除filelist文件列表里的文件
  • grep "main()" . -r --exclude-from filelist
4、在多级目录中对文本进行递归搜索
  • grep "string" . -r -n
5、搜索多个文件并查找匹配文本在哪些文件中
  • grep -1 "root" /etc/fstab  /etc/passwd
6、搜索开头不是英文字母的行,并显示行号
  • grep -n '^[^a-zA-Z]' /etc/fstab
7、搜索c后面跟1,2个d,后面再跟一个3的字符串的行
  • grep 'UUID=cd\{1,2\}3' /etc/fstab
8、过滤空行和开始为#开始的行
  • grep -Ev '^#|^$' /etc/fstab
9、 找出/etc/rc.d/rc.sysinit或/etc/grub2.cfg g文件中,以至少一个空白字符开头,且后面存在非空白字符的行
  • grep "^[[:space:]]\+[^[:space:]]" /etc/grub2.cfg
10、列出系统所有系统用户(Centos 7)
  • grep "\<\([[:digit:]]\)\{2,3\}\>" /etc/passwd
11、过滤functions文件中,以单词或者单词前面跟了一个”_“开头的行,并显示前后2行
这道题又是留给大家练手的, 大家赶紧动手吧! 如果您知道答案,也可以直接给我们微信留言哦!

昨日未解题:

7、获取ifconfig命令中的IP地址,使用三种方式实现
  • ifconfig  | grep -o '\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}'
  • ifconfig | grep -o '\b[0-9]\{1,3\}\b\.\b[0-9]\{1,3\}\b\.\b[0-9]\{1,3\}\b\.\b[0-9]\{1,3\}\b'
  • ifconfig  | grep -Po '(?<=inet)(.*)(?=net)'