今天我们来学习用find语句来实现文件查找
老规矩先看语法
find:用于指定目录下的文件(若没有写目录路径,就会在当前目录寻找)
语法:find [目录路径] [选项] 文件名
-name<字符串> 查找文件名匹配指定字符串的文件
-type<文件类型> 查找指定文件类型的文件
-mtime<+d/-d> 按时间查找文件,+d表示d天之前,-d表示今天到第d天之前的时间
-size<size>指定目录下按大小查找文件
-depth 从指定目录的最深的子目录下开始查找
-maxdepth<n> 从指定目录的最大第n级子目录录开始查找
-uid<id> 查找匹配指定的UID的文件或目录
-empty 查找大小为0的文件
通配符: * 表示通配任意的字符
?表示通配任意的单个字符
[ ] 表示通配括号里面的任意一个字符
我们可以做两个例题来练习
例题1:查找/etc目录下大于20K且类型为普通文件的所有文件。
大于20k:+20k
小于20k:-20k
例题2: 查找/etc目录下以lvm开头并且文件格式为.conf的所有文件
为了体现目录路径区别,我在不同级目录做了对比
没路径:
有路径:
(若没有写目录路径,就会在当前目录寻找)
关于文件补充:
-(f):普通文件
d:目录文件
l:链接文件
b: 块设备文件
c: 字符设备文件
p:管道文件