Linux之find&grep

Posted fivehundredmiles

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux之find&grep相关的知识,希望对你有一定的参考价值。

工具:操作系统命令

版本:适用linux内核的其他版本操作系统

概要:主要学习一次find和grep命令

find命令适用

适用于在指定的目录下进行文件查询,如果不提供目录,则默认在当前路径下进行查找。

语法:

find  path  -option [ -print ] [ -exec -ok command ] \;           通用格式
示例:

find  /root/usr/share   -name  "*.c"                       表示在指定目录及其子目录下根据文件名查找,查找文件名有".c"的所有文件

find  /root/usr/share   -type   f                       表示在指定目录及其子目录下查找一般性文件(c表示字型装置文件,b表示区块装置文件,s表示socket,f表示一般性文件,d表示目录,)

find  /tmp -exec grep -l "flag" \;             表示在指定目录及其子目录下查找所有文件,且执行文件内容查询操作;注意末尾的分号(;)需要紧跟表达式

find  /tmp -type f  -exec grep -l "flag" \;  

grep命令适用

适用于在指定目录下进行文件内容查询

语法:

示例:

grep    "name"    -r   -  /         表示从根目录查询,以递归的查询方式查找文件内容包括name的文件

grep    "name"   d*    /          表示从根目录查询文件以b开头,内容有name的行

grep  -l  -s   "name"  -  /         表示从根目录查询文件,展示出所有包含有name字段所有文件的具体路径,不展示错误信,“-”表示不指定具体名称名称

grep -r magic /usr/src         显示/usr/src目录下的文件(包含子目录)包含magic的行  

grep -w magic /tmp/files              只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’)

find|grep命令适用

find   /tmp    |xargs    grep   -l   "flag"       表示在tmp目录下查找任意文件,文件内容有“flag”的所有文件,并展示文件的具体路径

find  /tmp  * |xargs  grep  -l  "flag"

 

以上是关于Linux之find&grep的主要内容,如果未能解决你的问题,请参考以下文章

python之Linux基础

linux——boot空间不足

linux下的find&&grep查找命令

Linux系统之find

Linux指令find & grep

Linux命令之find的用法