• Linux:grep命令检索文件内容详解


    前言

    Linux系统中搜索、查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索。下面来一起看看Linux利用grep命令检索文件内容的详细介绍。

    方法如下:

    1、搜索某个文件里面是否包含字符串

    命令格式:grep "被查找的字符串" filename1

    例如:

    grep "0101034175" ./2022-11-17_20-02.log

    2、在多个文件中检索某个字符串

    命令格式:

    • grep "被查找的字符串t" filename1 filename2 filename3 ...
    • grep "被查找的字符串" *.log

    3、显示所检索内容在文件中的行数,可以使用参数-n

    命令格式: grep -n "被查找的字符串" *.log

    4、检索时需要忽略大小写问题,可以使用参数“-i”

    命令格式: grep -i "被查找的字符串" *.log

    5、从文件内容查找不匹配指定字符串的行

    命令格式:grep –v "被查找的字符串" 文件名

    6、搜索、查找匹配的行数:

    命令格式:

    • grep –c "被查找的字符串" 文件名
    • grep "被查找的字符串" 文件名 | wc -l

    7、递归搜索某个目录以及子目录下的所有文件

    命令格式:grep –r "被查找的字符串" 文件目录

    8、获取哪些文件包含搜索的内容,并列出文件名

    命令格式:grep -H –r "被查找的字符串" 文件目录 | cut -d: -f1 [| uniq]

    例如:

    grep -H -r "v$temp_space_header" /product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1

    grep -H -r "v$temp_space_header" /product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1 | uniq

    9、获取与整个搜索字符匹配的内容

    命令格式:grep –w "被查找的字符串" 文件名

    10、grep命令与find 命令的结合,实现联合检索

    命令格式:find . -name '*.sql' -exec grep -i '被检索内容 ' {} ; -print

    例如:

    find . -name '*.sql' -exec grep -i 'v$temp_space_header' {} ; -print

    Linux grep和find的区别

    这是两个不同的命令,关于grep:

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

    而linux下的find(具体使用方法可以参考这里://www.jb51.net/article/108198.htm

    功能:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。

    语法:find 起始目录 寻找条件 操作 

    说明:find命令从指定的起始目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并对之采取相关的操作。

    所以简单点说说,grep是查找匹配条件的行,find是搜索匹配条件的文件。

  • 相关阅读:
    【TCP】延时应答 与 捎带应答
    DES & 3DES 简介 以及 C# 和 js 实现【加密知多少系列】
    C++ 有效的独数
    手把手带你申请软著!助你提高通过率!!!
    如何优雅构建自定义 Spring Boot 验证器,让你的代码更加丝滑!
    ⑥、学习HTML 样式- CSS
    Day694.Tomcat如何支持异步Servlet -深入拆解 Tomcat & Jetty
    C语言操作符(按位与 ,按位或,按位异或,整形提升)
    计算机毕业设计springboot+vue+elementUI独立学院资产管理系统
    java设计模式之策略模式
  • 原文地址:https://blog.csdn.net/hhd1988/article/details/127917205