详解Linux下find查找文件命令和grep查找文件命令
作者:GG_Bond18
在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep,两个命令是有区的,今天通过本文给大家介绍下Linux下查找文件(find、grep命令),感兴趣的朋友一起看看吧
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"
到此这篇关于详解Linux下find查找文件命令和grep命令查找文件的文章就介绍到这了,更多相关linux查找文件命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!