类型解释-nn天以内修改的文件
+nn天以外修改的文件
n正好n天修改的文件
查找etc目录下5天之内修改且以conf结尾的文件
find /etc -mtime -5 -name '*.conf'
查找etc目录下10天之前修改且属主为root的文件find /etc -mtime +10 -user root
-mmin选项类型解释-nn分钟以内修改的文件
+nn分钟以外修改的文件
查找/etc目录下30分钟之前修改的文件
find /etc/ -mmin +30
查找/etc目录下30分钟之内修改的目录find /etc -mmin -30 -type d
-mindepth选项
表示从n级子目录开始搜索
假如/root/dir1的文件目录结构如下
tree /root/dir1
#输出如下
/root/dir1
├── dir2
│ └── dir3
│ ├── dir4
│ │ └── file4
│ └── file3
└── file2
3 directories, 3 files
在/root/level1下的3级子目录开始搜索find /root/dir1 -mindepth 3
#输出如下
/root/dir1/dir2/dir3/file3
/root/dir1/dir2/dir3/dir4
/root/dir1/dir2/dir3/dir4/file4
-maxdepth选项
表示最多搜索到n级子目录
find /root/dir1 -maxdepth 2
#输出如下
/root/dir1
/root/dir1/dir2
/root/dir1/dir2/dir3
/root/dir1/file2
操作
-print 打印输出(默认输出,不加也行)
-exec 对搜索到的文件执行特定的操作,格式为-exec command {} \;
搜索/etc下的文件(非目录),文件名以conf结尾,且大于10k,然后将其删除find /etc -type f -name '*.conf' -size +10k -exec rm -f {} \;
将/var/log目录下以log结尾的文件,且更改时间在7天以上的删除
find /var/log -name '*.log' -mtime +7 -exec rm -rf {} \;
搜索/etc下的文件(非目录),文件名以conf结尾,且大于10k,将其复制到/root/conf目录下find /etc -type f -name '*.conf' -size +10k -exec cp {} /root/conf \;