Linux学习之文件查找

学习源

模糊查找

locate   模糊查找命令,查找的是linux系统每天特点时间自动索引备份到系统数据库中的文件。

命令语法:locate [OPTION]… PATTERN…

				-i 不区分大小写

优点:
查找文件速度快

locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。

缺点:

查找到的结果不是实时结果(必要时,可手动执行updatedb命令索引文件到数据库,但是相当耗时。)
为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

精确查找

find path -option 
按文件属性查找
-name 按文件名查找,区分大小写

-iname 按文件名查找,不区分大小写

-empty 查找空文件或目录

-maxdepth 查找最大深度 /第一级 /var/tmp/ 就是三级 / var tmp

-mindepth 从哪个深度开始查找 /var 第二级

-perm 文件权限 比如4777

-user 文件或文件夹所有者

-uid 文件或文件夹所有者UID

-group 文件或文件夹属组

-gid 文件或文件夹数组GID

-nouser 没有所有者的文件或文件夹 比用用户被删了

-nogroup 没有属组的文件或文件夹

-links 文件或文件夹硬链接数量

example:
查找名为passwd的文件或文件夹              [root@baism ~]# find / -name passwd
查找名为passwd的文件或文件夹,忽略大小写    [root@baism ~]# find  / -iname passwd
查找空文件或目录                          [root@baism ~]# find /  -empty
查找深度2层                               [root@baism ~]# find /  -maxdepth 3 -perm 4777     包括根三层
从第二层开始查询                          [root@baism ~]# find /  -mindepth 2 -perm 4777
查找所有者为baism的文件或文件夹            [root@baism ~]# find  / -user baism      [root@baism ~]# find / -uid 1000
查找属组为baism的文件和文件夹              [root@baism ~]# find / -group baism      [root@baism ~]# find / -gid 1000
查找权限为4777的文件                      [root@baism ~]# find / -perm 4777
查找没有所有者的文件                       [root@baism ~]# find / -nouser
查找没有属组的文件                        [root@baism ~]# find / -nogroup
找出硬链接大于2的文件                     [root@baism ~]# find / -links +2 -type f
多目录查询                               [root@baism ~]# find /etc /home -user baism


按文件类型查找
f 普通文件

d 目录文件

l 符号链接文件

b 块设备 文件

c 字符设备文件

p 管道文件

s 套接字文件
example:
查找文件类型为管道文件的                    [root@baism ~]# find / -type p

按文件大小查找
+大于

-小于

n 等于

c 字节

k KB

M MB

G GB
example
查找大于100M的文件  [root@baism ~]# find / -size +100M
查找小于1k的文件  [root@baism ~]# find / -size -1k
查找大小为0c的文件  [root@baism ~]# find / -size 0c

按时间查找
+n 是比 n 大,

-n 是比 n 小,

n 正好是 n 。

按时间(天)

mtime修改时间

atime 访问时间

ctime 创建时间

找出一天以内修改过的文件      -mtime       [root@baism ~]# find -mtime -1 -type f
找出一天以前修改过的文件                   [root@baism ~]# find -mtime +1 -type f
找出一天以内访问过的文件      -atime       [root@baism ~]# find -atime -1 -type f
找出一天以前访问过的文件                   [root@baism ~]# find -atime +1 -type f
找出一天以内创建的文件        -ctime       [root@baism ~]# find -ctime -1 -type f
找出一天以前创建的文件                     [root@baism ~]# find -ctime +1 -type f

按时间(分钟)

-mmin 修改时间

-amin 访问时间
找出十分钟内访问过的文件   -amin      [root@baism ~]# find / -amin -10 -type f
找出10分钟内修改过的文件   -mmin       [root@baism ~]# find / -mmin -10 -type f

-print 打印输出

-ls 详细列出查找文件信息 类似于ls -l

-delete 删除找到的文件

-fls /PATH/file 把查找到的所有文件的长格式信息保存至指定文件中;

-ok COMMAND {} \; 对查找到的每个文件执行由COMMAND表示的命令;每次操作都由用户进行确认;

-exec COMMAND {} \; 对查找到的每个文件执行由COMMAND表示的命令;

[root@baism ~]# find / -perm 4777 -ls
[root@baism ~]# find / -perm 4777 -delete
[root@baism ~]# find / -user baism -fls /tmp/text
[root@baism ~]# find / -perm 4777 -ok rm -rf {} \;
[root@baism ~]# find / -perm 4777 -exec rm -rf {} \;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值