文件兄,我 find 到你了

Linux Story

纯正开源之美 有趣、有料、有意思

投稿:阿宅

忘记文件放哪里的滋味不好受,你会用find找出它藏在哪儿了吗?

文件找不到了,Windows 上,大家习惯了右上角直接搜索,分分钟就找回来了,但这样操作真的安全吗?

反正,这样的“便宜”事就别想对 Linux 做了。

其实,Linux 上的文件查找也并不难啦,而且安全性十足哒(特别花样多,比格高)--小小的find的就能做到。

不信,咱们来看看。

find 的用法(绝对 core )

基本格式:find 搜索范围 搜索条件 搜索内容

白话解:就是 find 空格后面加你想要搜索的目录(/xxx),再空格后面加上搜索条件(下面吾慢慢讲到),再空格内容就 OK 啦。

例:

1

2

find /tmp -name linux.list (查询tmp目录下linux.list文件)

注:-name就是条件, -必须加在条件前面,-name就是照文件名来查找的意思。

能按文件名查找当然好啦,可我忘了。

额,希望下面的方法能帮你

按用户创建来查找

例:查询 lamp 用户在 tmp 目录下创建的文件。

解:find /tmp -user lamp

按文件大小

例:查询 tmp 目录下大于100MB 的文件或小于10MB 的文件

解:find /tmp -size +204800 或 find /tmp -size -20480

科普:size 是代码块,一个数据块 = 512字节=0.5k 1k=1024字节 1m=1024k

区间查找:把两个例子组合起来,find /tmp -size +20480 && -size -204800

注:&&就是and,也可以用-a表示and,上面的语句还可以表达为find /tmp -size +20480 -a -size -204800

按时间查找

1

2

3

4

5

6

7

8

9

10

11

12

1. 查询10分钟之前访问的文件

find /tmp -amin -10(注:a:access的简写 min:minute)

2. 查询10分钟之内修改的文件

find /tmp -mmin -10(注:m:modify的简写 min:minute)

3. 查询10分钟之内属性被修改的文件

find /tmp -cmin -10(注:c:change的简写 min:minute)

模糊查找(终极方法)

1

2

3

4

5

6

7

8

9

10

1. 假设你的文件以 rc 开头,你甚至连几位字母都记不住了,那么

find /etc -name rc* (*:匹配多个字符)

*:匹配多个字符

2.假设你的文件以 rc 开头,你记得是四位字母,那么

find /etc -name rc?? (?:匹配单个字符)

通过以上方法,是不是文件就被我们找出来了。

至此,find命令在手,妈妈再也不担心我找不到文件了!!!

欢迎投稿,参加柴米油盐计划>>