文件查找和压缩

一.文件查找

非实时查找:   locate

实时查找:   find

1.locate

locate是查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db

索引的构建是在系统较为空闲时自动进行(周期性任务),执行updatedb可以手动更新

索引构建过程需要遍历整个根文件系统,很消耗资源

locate和updatedb需要安装mlocate包

特点: 查找速度快,模糊查找,非实时查找,搜索的是文件的全路径,不仅仅是文件名,可能只搜索用户具备读取和执行权限的目录

格式:     locate [option]...[pattern]

常用选项:

-i     不区分大小写的搜索

-n N    只列举前N个匹配项目     

-r     使用基本正则表达式

2.find

find是实时查找工具,通过遍历指定路径完成文件查找

特点:  查找速度略慢,精确查找,实时查找,查找条件丰富,可能只搜索用户具备读取和执行权限的目录

格式:     find [option]...[查找路径] [查找条件] [处理动作]

查找路径:  指定具体目标路径;默认为当前目录

查找条件:  指定的查找标准,可以文件名,大小,类型,权限等标准;默认为找出指定路径下的所有文件

处理动作:  对符合条件的文件做操作,默认输出至屏幕

3.参数替换 xargs

由于很多命令不支持管道|来传递参数,xargs用于产生某个命令的参数,xargs可以读入标准输入的数据,并且以空格符或回车符将stdin的数据分隔成为参数

对于许多不能接受过多参数的命令,xargs也可以解决

find经常和xargs命令进行组合:     find | xargs command

二.压缩和解压缩

1.gzip,gunzip

需要安装gzip包,对应后缀为 .gz

格式:     gzip [option]...file...

常用选项:

-k   keep,保留原文件,centos8新特性

-d   解压缩,与gunzip相当

-c   结果输出至标准输出,保留原文件不改变

-#   指定压缩比,#取值为1-9,值越大压缩比越大

2.bzip2和bunzip2

需要安装bzip包,对应后缀为 .bz2

格式:     bzip2 [option]...file...

常用选项

-k   keep,保留原文件

-d   解压缩

-c   结果输出至标准输出,保留原文件不改变

-#   压缩比,范围1-9,默认为9

3.xz和unxz

需要安装xz包,对应后缀为 .xz

格式:     xz [option]...file...

常用选项

-k   keep,保留原文件

-d   解压缩

-c   结果输出至标准输出,保留原文件不改变

-#   压缩比,范围1-9,默认为6

4.zip和unzip

zip可以实现打包目录和多个文件成一个文件并压缩,但可能会丢失文件属性信息,例如所有者和组信息,一般使用tar代替

需要zip和unzip包,对应后缀为 .zip

三.打包和解包

1.tar

tar即Tape ARchive 磁带归档,可以对目录和多个文件打包一个文件,并且可以压缩,保留文件属性不丢失,常用于备份,对应后缀为 .tar

格式:

2.split

split命令可以分割一个文件为多个文件




现不常用压缩工具: compress 打包工具: cpio

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容