
正文
linux查找命令find
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
-1linux的查找命令有两个:
locatefind
locate:有一个索引库,故速度快,但是新加入的一般不再索引库中,故可能无法查到
find:搜索速度慢,但是功能及其强大,可以追加命令动作进行处理
-2find命令格式
find 查找位置 查找标准(可有多个标准) 查找后动作
eg1:find/home -type f-mmin -5-ls -exec mv {} {}.bak \;#查找/home中5分钟以内修改过的文件,并将文件属性列出,同时将找出的文件追加后缀.bak
*多个标准之间可用-a -o -not进行连接,-a是并,-o是与,-not取反
-3find命令常用的一些标准选项
--1type [fcblsdp]
f文件c字符设备b块设备l链接文件s套接字文件d目录p管道文件
eg:请看eg1
--2访问时间(cat之类的也算)内容修改时间属性修改时间(名字,权限之类的)
-atime -mtime-ctime以天为单位的时间标准
-amin-mmin -cmmin 以分钟为单位的时间标准
eg:请看eg1
*给一个目录添加文件,那么目录记录的信息发生变化,则motify发生变化,与此同时因为目录增加了信息,导致目录大小变化,故c也发生变化,因为目录大小也是属性
--3-perm#按照权限标准
+mode#匹配mode中任意一位包含的权限
eg:find/home-perm +114#搜索/home下权限为114、104、110、100、014、004、010的文件
-mode #匹配mode中三位都包含的权限
eg:find/home-perm -115#搜索/home下权限为111、114的文件
mode #匹配和mode完全一样的
eg:find /home-perm 115 #搜索/home下权限为115的文件
--4-size[+-][kMG]#按照大小标准
+[kMG]#比此标准大的文件
-[kMG] #比此标准小的文件
[kMG] #等于此标准的文件
--5-name [file_name]#以名称为标准
-iname [file_name] #以名称为标准(忽略大小写)
--6-uid-gid#以用户id和组id为标准为查找
--7-nouser #查找没有属主的文件
-nogroup#查找没有属组的文件
-user USERNAME #根据属主查找;
-group GRPNAME #根据属组查找;
-4查找后动作
--1-exec command \;
eg:请看eg1
--2| xargs command
eg:find/home -type f-mmin -5| xargs mv {} {}.bak#使用xargs不能用-ls因为xargs获取的是管道过来的信息,-ls传递过来的并不是准确的文件名
--3-ok command \;#与-exec的区别在于,有修改的时候,会有提示








