搜索
查看: 1223|: 0

Linux下find命令详解

[复制链接]

134

主题

2

回帖

528

积分

高级会员

积分
528
发表于 2014-7-15 21:19:51 | 显示全部楼层 |阅读模式
1. find命令linux的find命令用来查找文件,功能很强大,可以通过时间, 用户组, 文件名, 文件类型, 权限,大小等来查找相应文件。2. find的用法通过find --help或者 man find查看介绍。$ find --helpUsage: find [path...] [expression]default path is the current directory; default expression is -print3. 通过时间查找与时间相关的参数: -atime, -ctime, -mtime。如: -mtime n n天之前当天修改过文件。 -mtime +n n天之前修改过的文件,不包括n天本身。 -mtime -n n天之内修改过的文件,包括n天。$ find ./ -mtime -2查找小于等于2天之内修改过的文件$ find ./ -mtime +2大于2天前修改过的文件$ find ./ -mtime 22天前,当天修改过的文件还可以查找比某个文件新的文件$ find ./ newer test.txt比test.txt还要新的文件4. 通过用户或组查找参数: -uid n : n为数字,用户的uid, /etc/passwd里与账号对应的数字 -gid n : n为数字,用户组gid, /etc/group中 -user name : name为用户名 -group name : name为 用户组名 -nouser : 文件是所有者不存在/etc/passwd中 -nogroup : 用户组不存在与/etc/group中, 当自行安装软件时,很可能软件的属性没有文件所有者,就使用nouser或nogroup来查找。$ find ./ -user yonggang查找当前目录下文件所有者是yonggang的文件$ find ./ -group yonggang  查找当前目录下文件所属用户组是yonggang的文件$ find ./ -nouser查找不属于任何人的文件5. 通过文件名称和权限来查找-name 通过名称来查找$ find ./ -name test.txt查找文件名test.txt的文件find ./ -name 'test*'查找文件名中包含test的文件-type 通过文件类型查找 f: 普通文件 d: 目录 l : 链接文件 b,c : 设备文件 s : socket$ find ./ -type l查找链接文件-perm 通过权限查找 -perm mode 查找文件权限刚好等于mode的文件, 为chmod的属性值,例如0777 -perm -mode 查找的权限必须包含mode -perm +mode 查找的权限包含任一mode$ find ./ -perm 0700查找权限为0700的文件-size 通过文件大小查找$ find ./ -size +1000k文件大于1M的文件$ find ./ -size -1000k文件小于1M的文件6. 连接其他命令-exec command : command为执行命令$ find ./ -size -1000k -exec ls -l {} \;找到小于1M的文件,以 ls -l输出 {} 表示 find找到的内容,;表示结尾 ,使用反斜线转义, exec 和 \; 之间为要执行的东西, 即 ls -l {}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-12-24 02:31 , Processed in 0.063318 second(s), 24 queries .

快速回复 返回顶部 返回列表