五、Linux入门之文件查找与打包解压缩

本文详细介绍了Linux系统中文件查找的两种主要工具——`locate`和`find`,包括它们的工作原理、选项和使用示例。接着讲解了参数替换工具`xargs`的用法。此外,还全面概述了各种压缩和解压缩工具,如`compress`、`gzip`、`bzip2`、`xz`、`zip`和`tar`的使用方法和选项。最后,文章提供了多个练习题,帮助读者巩固所学知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件查找

    在文件系统上查找符合条件的文件
    文件查找工具:
        locate:非实时查找,依赖于数据库,查找速度快
        find:实时查找,查找速度慢  

 

locate工具:

        查询系统上预建的文件索引数据库:/var/lib/mlocate/mlocate.db
        依赖于事先构建的索引
        索引的构建是在系统较为空闲时自动进行(周期性任务)
        索引构建过程需要遍历整个根文件系统,极消耗资源
        管理员可以通过命令手动更新数据库:updatedb

        工作特点:
            查找速度快
            模糊查找
            非实时查找
            搜索的是文件的全路径,不仅仅是文件名
            可能只搜索用户具备读取和执行权限的目录
        命令格式:locate KEYWORD
        常用选项:
            -i  不区分大小写的搜索
            -n  N  只列举前N个匹配项目
            -r  使用基本正则表达式
        示例
            搜索名称或路径中带有“conf”的文件
                locate  conf
            使用Regex来搜索文件
                locate  -r  ‘\.conf$’
                locate –r ‘yum*\.repo’
                locate -n 10 -r "yum.*.repo"        只显示前10个搜索结果
                locate –r ’\.\(jpg\|png\)$’
                locate -r 'f.*.jpg'
                

find工具:

        实时查找工具,通过遍历指定路径完成文件查找
        工作特点:
            查找速度略慢
            精确查找
            实时查找
            可能只搜索用户具备读取和执行权限的目录            
        语法格式:find [OPTION]... [查找路径] [查找条件] [处理动作]        
        查找路径:指定具体目标路径;默认为当前目录        
        查找条件:指定的查找标准,可以文件名、大小、类型、权限等标准进行,默认为找出指定路径下的所有文件
        处理动作:对符合条件的文件做操作,默认输出至屏幕
        查找条件:
            指搜索层级
                  -maxdepth  level 最大搜索目录深度,指定目录下的文件为第1级
                  -mindepth  level 最小搜索目录深度
                  如:   find -maxdepth 1 –name “*.conf”        只在第1层目录中搜索
                                [root@centos7: ~]#find /etc -maxdepth 1 -name "*.conf"
                                /etc/resolv.conf
                                /etc/libaudit.conf
                                /etc/asound.conf
                                /etc/e2fsck.conf
                                /etc/mke2fs.conf                    
                            find –mindepth 2 –name “*.conf”        在至少2层目录的搜索
                                [root@centos7: ~]#find /etc -mindepth 2 -name "*.conf"
                                /etc/fonts/conf.d/57-dejavu-serif.conf
                                /etc/fonts/conf.d/65-1-vlgothic-gothic.conf
                                /etc/fonts/conf.d/31-cantarell.conf
                                /etc/fonts/conf.d/65-0-lohit-nepali.conf
                                /etc/fonts/conf.d/59-liberation-mono.conf
                                /etc/fonts/conf.d/65-0-lohit-bengali.conf
                  -depth  先处理目录内的文件,再处理指定目录
            

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值