24.Linux中grep命令

一、grep命令用法

grep使用:

  1. 在文件file.txt中搜索字符串"hello",并打印匹配到的行:

    复制代码
    grep "hello" file.txt
  2. 在文件file.txt中忽略大小写地搜索字符串"hello",并打印匹配到的行:

    复制代码
    grep -i "hello" file.txt
  3. 在文件file.txt中反向匹配,即打印不包含字符串"hello"的行:

    复制代码
    grep -v "hello" file.txt
  4. 在文件file1.txt和file2.txt中搜索字符串"hello",并打印匹配到该模式的文件名,而不是匹配的行:

    复制代码
    grep -l "hello" file1.txt file2.txt
  5. 递归搜索目录directory/及其子目录中的文件,查找字符串"hello",并打印匹配到的行:

    复制代码
    grep -r "hello" directory/
  6. 在文件file.txt中搜索字符串"hello",并打印匹配到的行及其行号:

    复制代码
    grep -n "hello" file.txt
  7. 在文件file.txt中搜索满足多个模式之一的行,可以同时指定多个模式进行搜索:

    复制代码
    grep -e "pattern1" -e "pattern2" file.txt
  8. 在文件file.txt中使用正则表达式进行搜索,匹配以字符'b'开头,后跟一个元音字母,最后是字符't'的行:

    复制代码
    grep -E "b[aeiou]t" file.txt
  9. 在文件file.txt中搜索字符串"hello",并打印匹配到的行及其前后的2行内容:

    复制代码
    grep -C 2 "hello" file.txt

二、grep命令详解

grep命令是在Linux和Unix类操作系统中非常常用的文本搜索工具。它可以在指定的文件中搜索匹配特定模式的行,并将匹配到的行打印出来。

基本的grep命令语法如下:

复制代码
grep [选项] 模式 [文件...]

在这里,选项是可选的,用于指定一些特殊的搜索参数。模式是你希望搜索的模式或正则表达式。文件是你要搜索的文件路径列表。如果不指定文件,则grep命令会从标准输入读取数据。

下面是一些常用的grep命令选项:

  • -i:忽略大小写,不区分大小写地进行搜索。
  • -v:反向匹配,打印不匹配模式的行。
  • -l:只打印匹配到模式的文件名,而不是匹配的行。
  • -r:递归搜索子目录。
  • -n:显示匹配到模式的行及行号。
  • -C <num>:前后显示匹配到模式的行数。
  • -e <pattern>:指定多个模式之一进行搜索。

以下是一些grep命令实例:

  1. 在文件中搜索特定模式:

    复制代码
    grep "pattern" file.txt
  2. 忽略大小写进行模式匹配:

    复制代码
    grep -i "pattern" file.txt
  3. 在多个文件中搜索:

    复制代码
    grep "pattern" file1.txt file2.txt
  4. 递归搜索目录:

    复制代码
    grep -r "pattern" directory/
  5. 显示匹配行及行号:

    复制代码
    grep -n "pattern" file.txt
  6. 通过正则表达式搜索:

    复制代码
    grep -E "regex pattern" file.txt
相关推荐
飞飞传输13 分钟前
飞驰云联文件交换建设方法论:从单点传输到持续治理
大数据·运维·安全
叼烟扛炮30 分钟前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
Ruiery1 小时前
Linux 6.6内核内存管理深度解析(十五):CMA 连续内存分配器
linux·运维·服务器
测试界的小码农2 小时前
【Linux 命令实战(01):认识 Linux 终端,从零掌握第一个命令】
linux·运维·服务器
布裘2 小时前
【银河麒麟】重启后时区丢失?排查发现 localtime 被业务程序替换成硬链接
linux·运维·网络
zhikouai3 小时前
把外部助手接进聊天软件的架构分层与参数配置
服务器·网络·php
huainingning3 小时前
锐捷10.X路由器版本升级不生效问题排查
运维·网络·智能路由器
荣合技术服务3 小时前
HPC 超算集群故障维修实录:找荣合科算维护后,模拟仿真计算又能跑了
运维·服务器·超算服务器·荣合科算
GeW5 小时前
高端化转型进入“补底层”阶段:Linux与数据库的再定位
linux
silent5 小时前
龙芯3B6000M运行Yolov8+FastApi
linux·loongarch·loongnix·龙芯