Liunx 文件查询神器

2018-10-23  本文已影响0人  yxuiang

再来谈一谈怎么查找文件。在Linux下面也有相当优异的查找命令。通常find不很常用的,因为速度慢!通常我们都是先使用whereis或者是locate来检查,如果真的找不到了,才以find来查找。为什么呢?因为whereis与locate是利用数据库来查找数据,所以相当快速,而且并没有实际查询硬盘,比较节省时间。
引用来自: 鸟哥. “鸟哥的Linux私房菜 基础学习篇(第三版)。” Apple Books.

有趣的博客地址 20ID的博客

find语法

find [PATH] [option] [action]

参数:

😁与时间有关的参数:共有 –atime-ctime-mtime,下面以 -mtime 说明:

范例:

1. 将过去系统上面 24 小时内有改动(mtime)的文件列出

find / -mtime 0

那个 0 是重点! 0 代表目前的时间,所以,从现在开始到 24 小时前,有改动过内容的文件都会被列出来!

2. 3天前的 24 小时内有改动(mtime)的文件列出

find / -mtime 3 

3. 寻找 /etc 下面的文件,如果文件日期比 /etc/passwd 新就列出

find /etc -newer /etc/passwd

-newer 用在分辨两个文件之间的新旧关系是很有用的!

4. 找出“4天内被改动过的文件名”呢?

find /var -mtime -4

5. 那如果是“4 天前的那一天”呢?

find/var -mtime 4

有没有加上“+, -”差别很大。

find /var -mtime +4 
find /var -mtime -4
find /var -mtime 4

🤠与用户或用户组名有关的参数:

范例:

1. 查找 /home 目录下 属于 vbird 的文件

find /home -user vbird

2. 查找 /home 目录下 系统中不属于任何人的文件

find /home -nouser

🤪与文件权限昵称有关的参数:

范例:

1. 查找 /home 目录下 文件名为 government.txt

find /home -name government.txt

2. 找出 /var 目录下文件类型为 Socket 的文件名有哪些

find /var -type s

3. 要找出那些怪异的文件,例如 socketFIFO 文件,可以用

find /var -type p # 或 -type s 来找!

4. 查找文件当中含有 SGIDSUIDSBIT 的属性

find / -perm +7000

所谓的 7000 就是 ---s--s--t,那么只要含有 s 或 t 的就列出,所以当然要使用 +7000,使用 -7000 表示要含有 ---s--s--t 的所有三个权限,因此,就是 +7000 。

5. find 支持通配符,查找文件名包含.log的文件

find / -name "*.log*"
上一篇 下一篇

猜你喜欢

热点阅读