LINUX find命令
以以下目录为例
用文件名查找
find -name filename //filename是你要查找的文件名
//此处可以查找当前目录和其子目录中的文件
//查找当前目录及子目录中的file3
find path -name filename //指定路径查找,path为路径,filename是你要查找的文件名
//在指定的路径及其子目录下查找文件
//在/home/这个路径下查找file3
//此处第一个"/"表示根目录
//"home/"表示根目下的home文件夹
find -iname filename //不区分大小写查找
//filename是你要查找的文件名
//此处可以查找当前目录和其子目录中的文件,但是忽略了文件名的大小写
//分别用大写和小写的形式在当前目录及其子目录下查找file2文件
find -maxdepth num -name filename //从你所在的目录向下查找num个目录深
//num是你要查找的目录的深度(深度包括你所在的目录)
// 目录/home/theturecolor/newDir0/newDir1/file1 找到file1
// 目录/home/theturecolor/Hello/file1 找到file1
// 但在查找file2时由于有一个file2的目录是:
// /home/theturecolor/newDir0/newDir1/newDir2/file2,所以只找到了-
// -/home/theturecolor/Hello/file2
find path -maxdepth num -name filename //在path目录下向下查找num个目录深
//num是你要查找的目录的深度(深度包括你所在的目录)
//从/home/路径开始向下查找5个目录深,查找file1
find -mindepth num1 -maxdepth num2 -name filename //在当前目录第num1层和第num2层之间查找filename(一般num1<num2)
//在当前目录第2层和第4层之间查找file2
find -not -name filename //查找文件名不是filename的文件及文件夹
//在当前目录及其深1的目录(也就是当前目录)下查找文件名不是file0的文件
//由于文件太多所以进入newDir0文件夹
用inode编号查找文件
可以用ls -i1显示文件inode编号
find -inum numNode //查找inode编号为numNode的文件
//查找inode编码为786764的文件,既file0
用权限查找
find -perm -g=r //在当前目录及其子目录下查找对同组用户有读权限的文件
find -perm 644 //在当前目录及其子目录下用八进制查找,权限为644的文件
按文件类型查找
find -type filetype //查找当前目录及其子目录下的类型为filetype的文件
//在当前目录及其子目录下查找文件类型为d的文件
通过对比文件更改时间查找
find -newer filename //找到比filename之后修改的文件
通过对比文件更改时间查找
find -size -100M //在当前文件夹及其子目录中查找比100M小的文件及文件夹
find -size +100M //在当前文件夹及其子目录中查找比100M大的文件及文件夹
find -size 100M //在当前文件夹及其子目录中查找100M的文件及文件夹