Linux下的搜索工具find基本用法
我们经常要在日常的工作中查找文件,要说linux下最强大的文件查找工具,非find莫属。find可以从文件名、读取修改时间、大小、类型等等来筛选文件,可以完成日常几乎所有的查找需求。
来看一个简单的例子:
find /tmp/ -name 'galeki*'
意思就是在/tmp目录下找出以“galeki”开头的文件,-name指出是对文件名进行筛选,是不是很简单明了?除了文件名,find还有更强大的筛选条件:
1.时间:
2.大小:
3.所有者:
例子:
find /tmp/ -name 'sess*' -mtime 1
find ./ -name '*.zip' -size 546k
find /tmp/ -user 'galeki'
另外,还可以用"+"、"-"来进一步修饰时间和大小的条件:
find src/ -mtime +2
find download/ -size +50M
光找出文件还不够,我们还要对找出的文件进行处理才有意义,一般来讲可以把find的查找结果传递给其他的命令做进一步处理。find本身也提供了许多处理动作的选项。
常用的处理动作: 参数 意义 -print
打印出找出文件的完整地址,一个文件一行
-delete
删除找出的文件 -exec command {} \;
对每一个找到的文件执行command命令,
并用文件替换"{}",“\;”是固定的结束符。
例子:
find /tmp/ -ctime +7 -delete
find ./ -name '*.unk' -exec file {} \;
- 最新评论