Linux学习笔记:压缩文件

压缩

压缩是挤压数据使得它占用更少的存储空间,从而达到节省磁盘空间,方便维护备份文件和传输文件的作用。

zip命令

Zip是一种常用的压缩程序,它使用一种基于DEFLATE算法的压缩技术来压缩文件,并且通常具有比其他压缩格式更高的压缩比。CentOS中默认没有安装zip相关软件,使用yum install zip unzip -y命令来安装

压缩

  • 压缩单个文件

    命令格式:zip 压缩文件名 原文件名

zip filename.zip file

将file文件压缩到filename.zip文件中

  • 压缩目录文件

    命令格式:zip -r 压缩文件名 原目录名

zip -r filename.zip filedir

将filedir目录压缩到filename.zip文件中

解压

命令格式:unzip 压缩文件名 -d 解压目录

unzip filename.zip -d filedir

将filename.zip解压到filedir目录,若不指定-d则解压到当前目录

gzip命令

gzip是一种常用的压缩程序,它使用DEFLATE算法来压缩文件,可实现较高的压缩比。通过此命令压缩得到的新文件,其文件后缀名为“.gz”。

gzip命令只能用来压缩文件,不能压缩目录,即使指定了目录,也只能压缩目录内的所有文件。

命令格式

gzip [选项] 源文件

常用选项

  • -c:将压缩数据输出到标准输出中,并保留源文件。
  • -d:对压缩文件进行解压缩。
  • -r:递归压缩指定目录下以及子目录下的所有文件。
  • -l:查看压缩文件内容。

示例

  • 压缩文件:

    gzip file1.txt	# 将file1.txt压缩成file1.txt.gz
    
  • 解压缩文件:

    gzip -d file1.txt.gz	# 将 file1.txt.gz 解压缩成 file1.txt
    
  • 查看压缩文件内容:

    gzip -l file1.txt.gz
    

xz命令

xz是一种高效的压缩格式,它使用LZMA2算法来压缩文件,可实现较高的压缩比。通过此命令压缩得到的新文件,其文件后缀名为“.xz”。

同样的,xz命令也只能用来压缩文件,不能压缩目录。

命令格式

xz [选项] 源文件

常用选项

  • -z:压缩
  • -d:对压缩文件进行解压缩
  • -al:查看压缩文件内容。

示例

  • 压缩文件:

    xz file1.txt	# 将file1.txt压缩成file1.txt.xz
    
  • 解压缩文件:

    xz -d file1.txt.xz	# 将 file1.txt.xz 解压缩成 file1.txt
    
  • 查看压缩文件内容:

    xz -l file1.txt.xz
    

tar命令

tar是一种常用的归档程序,它可以将多个文件和目录打包成一个文件,便于传输和备份。用途:制作归档文件、释放归档文件

tar文件是一种归档文件,包含多个文件,但是没有经过压缩,需要配合gzip等压缩命令来压缩。

命令格式

命令格式:

  • tar [选项] 归档文件名 源文件或目录
  • tar [选项] 归档文件名 [-C 目标目录]

常用命令选项

  • -c:创建 .tar 格式的包文件

  • -x:解开.tar格式的包文件

  • -v:输出详细信息,详细显示打包和解包的过程

  • -f:表示使用归档文件

  • -t:列表查看包内的文件

  • -p:保持原文件的原来属性

  • -P:保持原文件的绝对路径

  • -C:解包时进入指定的目标文件夹

  • -z:调用gzip程序进行压缩或解压

  • -J:调用xz程序进行压缩或解压

  • -j:调用bz2程序进行压缩或解压

  • -exclude:在打包时排除指定文件或目录。

  • -wildcards:使用通配符来指定需要打包的文件或目录。

示例

  • 创建一个新的tar归档文件:

将file1,file2,dir1归档到archive.tar文件内

tar -cvf archive.tar file1 file2 dir1
  • 解压缩tar归档文件:

将archive.tar文件解压到当前目录

tar -xvf archive.tar
  • 解压缩经过gzip压缩的tar归档文件到/home路径下:
tar -xzvf archive.tar.gz -C /home
  • 解压缩经过xz压缩的tar归档文件:
tar -xJvf archive.tar.xz

5.向已有的tar归档文件中追加文件或目录:

tar -rvf archive.tar file3 dir2

6.打包时排除指定文件或目录:

tar -cvf archive.tar --exclude=dir1 file1 file2

常见提醒

tar: 从成员名中删除开头的“/”

在tar命令中,成员名指的是要在归档中包含的文件或目录的名称。如果在执行tar命令时指定了绝对路径的成员名(即以“/”开头),tar命令将删除开头的“/”,以相对路径形式将其添加到归档中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值