shell 搜索目录下所有文件包含某个内容的文件

  • Post author:
  • Post category:其他




shell 搜索目录下所有文件包含某个内容的文件



一、Linux查找文件内容的常用命令方法。

  1. 从文件内容查找匹配指定字符串的行:

    $ grep “被查找的字符串” 文件名

    例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件

    grep “thermcontact”

    /

    .in

  2. 从文件内容查找与正则表达式匹配的行:

    $ grep –e “正则表达式” 文件名

  3. 查找时不区分大小写:

    $ grep –i “被查找的字符串” 文件名

  4. 查找匹配的行数:

    $ grep -c “被查找的字符串” 文件名

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

    $ grep –v “被查找的字符串” 文件名



二、从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行

find / -type f -name “

.log” | xargs grep “ERROR”

例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行

find . -name ”

.in” | xargs grep “thermcontact”