find命令

Find 查询
在 linux中查找文件常用的两个命令:

locate :模糊查找,非实时,速度快,是从数据库中查找而非系统上查找,可使用updatedb 命令更新数据库

find :精确,实时,可以指定查找路径,速度慢

fiind [ 查找路径 …] [查找条件] [ 处理动作]

-name :查找指定名字的文件

示例: find / -name fstab :查找根下名字为fstab的文件

-iname :查找制定名字的文件,文件名不区分大小写
-regex :使用正则表达式查找

示例: find / -regex '.*tab' : 查找以tab结尾的文件

-iregex :使用正则表达式查找,文件名不区分大小写

-user : 查找文件属主为指定用户的文件

示例: find / -user ftp : 查找文件属主为ftp的文件

-group :查找文件属组为指定用户的文件
-uid :查找文件属主 uid为指定 uid的文件

示例: find / -uid 0 : 查找文件属主uid为0的文件

-gid : 查找文件属组gid为指定gid的文件

-nouser: 查找没有属主的文件

示例: find / -nouser : 查找根下没有属主的文件

-nogroup: 查找没有属组的文件

-type : 查找指定文件类型的文件

示例 :find / -type l : 查找根下文件类型为链接的文件

-size :查找指定大小的文件

示例: find / -size +10M : 查找跟下文件大小大于10M的文件

-atime : 查找访问时间在指定范围的文件(单位天)

示例: find / -atime +3 : 查找访问时间在3天之内的文件

find / -atime -3 :查找至少3天没有访问过的文件

find / -atime 3 :查找访问时间距离现在刚好3天的文件

-mtime : 查找编辑时间在指定范围的文件

-ctime :查找修改时间在指定范围的文件

-amin :查找访问时间在指定范围的文件(单位分钟)

-mmin : 查找编辑时间在指定范围的文件 (单位分钟)

-cmin :查找修改时间在指定范围的文件 (单位分钟)

-perm : 根据权限查找文件

示例: find / -perm 400 :查找根下权限为400的文件

find / -perm /400 : 查找匹配任何一位的权限的文件,例如477,707,770

find / -perm -400 : 查找比400权限高的文件,例如:422,444, 600

处理动作:

-exec : 直接执行命令不予提醒

示例:find / -perm 777 -exec ls -l {} \; : 把find查找出的文件执行ls -l命令

-ok :执行命令前提醒

| xargs :把find查找结果交给xargs处理

示例:find / -perm 777 | xargs chmod 770 : 把find查找出的文件执行chmod 770命令

多条件查找:

-a :并 (可省略)

示例: find / -perm 777 -a -name *.txt :查找根下权限为777且以.txt结尾的文件

-o :或

! 或者 -not : 非 

你可能感兴趣的:(find)