Linux/Unix grep命令

时间:2024-11-05 06:59:23

grep 是一个在 Linux 和 Unix 系统中广泛使用的命令行工具,用于搜索文件中的文本行。以下是一些基本的 grep 命令用法:

  1. 基本搜索

    grep "pattern" file
    

    这将在 file 文件中搜索包含 “pattern” 的行,并输出这些行。

  2. 忽略大小写

    grep -i "pattern" file
    

    使用 -i 选项来忽略大小写。

  3. 递归搜索

    grep -r "pattern" directory
    

    使用 -r 选项递归地在 directory 目录及其子目录中搜索 “pattern”。

  4. 只打印匹配的字符串

    grep -o "pattern" file
    

    使用 -o 选项只输出匹配的字符串,而不是整行。

  5. 使用正则表达式

    grep -E "regex" file
    

    使用 -E 选项来使用扩展正则表达式。

  6. 排除匹配的行

    grep -v "pattern" file
    

    使用 -v 选项来显示不包含 “pattern” 的行。

  7. 只显示匹配行的文件名

    grep -l "pattern" file1 file2 file3
    

    使用 -l 选项来列出包含 “pattern” 的文件名。

  8. 统计匹配次数

    grep -c "pattern" file
    

    使用 -c 选项来计算 “pattern” 在文件中出现的次数。

  9. 使用多个模式匹配

    grep -E "pattern1|pattern2" file
    

    使用 | 来匹配多个模式。

  10. 只匹配整行

    grep "^pattern$" file
    

    使用 ^ 来匹配行的开始,$ 来匹配行的结束。

  11. 使用颜色高亮显示匹配的文本

    grep --color "pattern" file
    

    使用 --color 选项来高亮显示匹配的文本。

  12. 使用文件列表作为输入

    grep "pattern" $(cat files.txt)
    

    使用 $(cat files.txt) 来将文件列表作为输入。

这些是 grep 命令的一些基本用法。grep 非常强大,可以通过组合不同的选项和正则表达式来执行复杂的文本搜索任务。