免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 667 | 回复: 0
打印 上一主题 下一主题

Linux Find命令 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-23 11:09 |只看该作者 |倒序浏览

                我们经常要在日常的工作中查找文件,要说linux下最强大的文件查找工具,非find莫属。find可以从文件名、读取修改时间、大小、类型等等来筛选文件,可以完成日常几乎所有的查找需求。
来看一个简单的例子:
find /tmp/ -name 'galeki*'
意思就是在/tmp目录下找出以“galeki”开头的文件,-name指出是对文件名进行筛选,是不是很简单明了?除了文件名,find还有更强大的筛选条件:
1.时间:
参数
意义
-atime n
上一次存取时间在n*24小时前以内的文件
-ctime n
上一次状态改变在n*24小时前以内的文件
-mtime n
上一次修改时间在n*24小时前以内的文件
-newer file
比file所指的文件还要新的文件
2.大小:
参数
意义
-size n[bkMG]
大小为n(b为比特,k为KB,M为MB,G为GB)的文件
3.所有者:
参数
意义
-user name
所有者用户名称是name的文件
-group name
所有者用户组群名称是name的文件
例子:
find /tmp/ -name 'sess*' -mtime 1   [color="#808080"]#在/tmp目录下找到所有以'sess'开头、并且在一个小时以内修改过的文件
find ./ -name '*.zip' -size 546k       [color="#808080"]#在当前目录下找到所有546KB的zip压缩包文件
find /tmp/ -user 'galeki'               [color="#808080"]#在/tmp目录下找到所有所有者为galeki的文件
另外,还可以用"+"、"-"来进一步修饰时间和大小的条件:
find src/ -mtime +2            [color="#808080"]#找出src目录下上一次修改时间在2天以前的文件
find download/ -size +50M [color="#808080"]   #在download目录下找出大于50M的文件
光找出文件还不够,我们还要对找出的文件进行处理才有意义,一般来讲可以把find的查找结果传递给其他的命令做进一步处理。find本身也提供了许多处理动作的选项。
常用的处理动作:
参数
意义
-print

打印出找出文件的完整地址,一个文件一行
-delete

删除找出的文件
-exec command {} \;

对每一个找到的文件执行command命令,
并用文件替换"{}",“\;”是固定的结束符。





例子:
find /tmp/ -ctime +7 -delete            [color="#808080"]#删除/tmp目录下一周以前创建的文件
find ./ -name '*.unk' -exec file {} \;   [color="#808080"]#找出当前文件夹下后缀是unk的文件,并用file命令显示每个文件的文件类型
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/93926/showart_1872942.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP