Linux文本处理三剑客:grep/sed/awk

grep:文本搜索

grep命令介绍

  • grep,用来查找文件中匹配指定文本的行并打印出来

  • 语法格式: grep [选项] PATTERN 文件名

  • 命令解释:查找指定文件中包含PATTERN的行

常用选项

  • -r:递归查找指定目录下的所有文件(grep命令默认支持多个文件的查找,但不能在目录中查找,如果需要在目录中进行查找,则需要使用 -r选项指定)。可以使用--exclude排除某些文件,使用--exclude-file排除某些目录

    grep -r  hello .
    grep hello test01.txt test02.txt
    
  • -c:只打印匹配的行数,不显示内容

    grep -c Hello test01.txt
    
  • -i:忽略大小写进行匹配

    grep -i hello test01.txt
    
  • -v:反向匹配,打印不匹配的内容

    grep -v hello test01.txt
    
  • -l:打印包含匹配项的文件名

    grep -l zip dirlist*.txt
    
  • -L:打印不包含匹配项的文件名

    grep -L zip dirlist*.txt
    
  • -n:在每个匹配行之前打印出其位于文件中的相应行号

    grep -n zip dirlist*.txt
    
  • -E:使用正则表达式进行匹配

    echo "BBB" | grep -E 'AAA|BBB'
    

sed:流编辑器

sed命令介绍

  • sed(stream editor,流处理器): 对文本流进行编辑。在临时缓冲区中创建副本文件,只修改副本不修改源文件(可以使用-i直接修改源文件),逐行处理文件,处理临时缓冲区中的行。

  • sed命令格式

    sed [-hnV] [-e
                        
                        

你可能感兴趣的:(Linux文本处理三剑客:grep/sed/awk)