当前位置:主页 > 脚本语言 > Shell >

详解Linux下find查找文件命令和grep查找文件命令

时间:2022-08-31 11:13:35 | 栏目:Shell | 点击:

linux中一切皆文件的思想是重中之重,那么查找文件是学习Linux必须要掌握的技能。

一、find命令

1.按文件名

find 路径 -name "文件名"

:查找/home目录下的所有以.c为后缀的文件

find /home -name "*.c"

2.按文件类型查询

find 路径 -type 类型

类型:普通文件 f 目录d 符号链接l 块设备文件b

字符设备文件c socket文件s 管道文件p

:查找/root/study/c++路径下的所有目录

3.按照文件大小查找

通项:find 路径 -size 范围

范围:+表示大于 -表示小于 等于不需要符号

大小:M(必须大写) k(必须小写) c(表示字符)

:查找该目录下0k到10k的文件

4.按照文件日期查找

4.1按照创建日期查找

find 路径 -ctime -n/+n

4.2按照修改日期查找

find 路径 -mtime -n/+n

4.3按照访问日期查找

find 路径 -atime -n/+n

-n:n天以内 +n:n天以外

5.按深度查找

5.1查找起始点以下n层的目录,不超过n层

find 路径 -maxdepth n(层数)

5.2搜距离起始点n层以下的目录(即最少n层)

find 路径 -mindepth n(层数)

6.高级查找

6.1-exec

find 路径 查找方式 -exec shell命令 {} \;

6.2-ok

该方法与6.1相比更加安全,其存在确认过程

find 路径 查找方式 -ok shell命令 {} \;

6.3管道方式

有较多文件时优先使用

find 路径 查找方式 | xargs shell命令

二、grep命令

即按照内容查找

grep 参数 "内容" 查找目录或文件

参数

-r 若是目录,则可以递归查找

-n:可以显示该查找内容所在的行号

-i:可以忽略大小写进行查找

-v:不显示含有某字符串

三、grep和find命令结合使用

先使用find命令查找文件,然后使用grep命令查找哪些文件包含某个字符串

find ./ -name "*.cpp" | xargs grep -n "main"

您可能感兴趣的文章:

相关文章