Linux下的文件压缩和打包

Linux 上的压缩包文件格式,除了 Windows 最常见的*.zip、*.rar、.7z后缀的压缩文件,还有 .gz、.xz、.bz2、.tar、.tar.gz、.tar.xz、tar.bz2

文件后缀名                               说明

*.zip                       zip程序打包压缩的文件

*.rar                          rar程序压缩的文件

*.tar                     tar程序打包,未压缩的文件

*.gz                     gzip程序 (GNU zip) 压缩的文件

*.xz                          xz程序压缩的文件

*.bz2                tar打包,gzip 程序压缩的文件

*.targz              tar打包,gzip程序压缩的文件

*.tar.xz             tar打包,xz程序压缩的文件

*.tar.bz2           tar打包,bzip2程序压缩的文件

*.tar.7z             tar打包,7z程序压缩的文件

  • compress

使用compress压缩源文件会被覆盖

文件后缀: .Z

-c 将结果打印到屏幕上,压缩文件显示的则是乱码。

配合重定向,不会覆盖原文件,但权限会变,重定向的本质是创建新文件,新文件的权限与umask值有关

-f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
         -v 显示详细过程。

如下图

解压缩    -d

uncompress

zcat X.Z > X   将文件解压到当前目录下,并保留源文件

  • .zip

unzip   解压缩
          |zip 将生成的文件名 -
                      可以将管道前的输出结果转为文件并压缩。通过此方式压缩的文件只能使用“unzip -p 压缩包 > 新文件 ”来解压缩

解压:

pwd4文件与pwd文件大小相等,证实此命令。

unzip -p 预览解压缩后的内容到屏幕,可以配置重定向将结果保存到指定文件,权限会发生变化。

zip -r 新文件名.zip 被压缩打包的文件(可以为多个文件)

  • gzip
    后缀:.gz

    -c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。
    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
    -v 显示详细过程。
    -# 数字越大,压缩比越高,速度越慢,文件越小。

-1 等于 --fast

-2,3,4,5,6(default),7,8
-9 等于 --best

解压缩

-d 
                       gunzip
                       zcat X.gz > X

  • bzip2
    .bz2

    -k 保留原文件
    -c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。
    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
    -v 显示详细过程。
    -# 数字越大,压缩比越高,速度越慢,文件越小。
    -1 等于 --fast
    -2,3,4,5,6,7,8
    -9 等于 --best (default)

解压缩

-d 
                        bunzip
                        bzcat X.bz2 > X

  • xz
    .xz

    -k 保留原文件
    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
    -v 显示详细过程。
    -# 数字越大,压缩比越高,速度越慢,文件越小。
    -0 等于 --fast
    -1 -2,3,4,5,6(default),7,8
    -9 等于 --best

解压缩

-d 
                           xzcat

与gzip命令类似。

  • tar

-cf 创建包名字 原文件(可以指定多个)

-tf 包名字 显示包中的文件名

-tvf 详细显示包中的文件名

-rf 包名字 新文件名(可以指定多个)
         --delete -f 包名字 被删除的文件名(可以指定多个)

-xf 包名字 解出所有的文件到当前目录

将源文件删除后又从包中解出来。

-xf 包名字 文件名 解所指定的文件到当前目录
         -C 解包到指定目录
         -v 显示过程
         -Jcf 创建包的名字(.tar.xz) 原文件(可以指定多个) 打包并用xz压缩
         -jcf 创建包的名字(.tar.bz2) 原文件(可以指定多个) 打包并用bzip压缩
         -zcf 创建包的名字(.tar.gz) 原文件(可以指定多个) 打包并用gzip压缩

-T 指定个列表,包含需要被打包的文件,以换行符为间隔
         -X 指定个排除列表,以换行符为间隔

本文简单的列举了Linux中的一些压缩工具及其应用。

时间: 2024-12-18 04:38:16

Linux下的文件压缩和打包的相关文章

linux下的文件压缩与打包---compress,gzip,zcat,bzip2,bzcat,tar,find,tarfile,tarball

常见的Linux压缩文件扩展名 *.Z            compress压缩的文件(已经被gzip替代) *.gz          gzip程序压缩的文件 *.bz2        bzip2程序压缩的文件(比gzip效果好,但只能针对一个文件来压缩) *.tar          tar程序打包的数据,没有压缩(使用tar打包成一个文件,可以解决bzip2不能压缩多个文件的问题) *.tar.gz     tar程序打包的数据,并经过gzip的压缩 *.tar.bz2   tar程序打

Linux下的文件压缩归档与系统进程管理

Linux下的文件压缩归档与系统进程管理   一:实验环境 1):在虚拟机下配置好linux系统 2):了解文件压缩归档的含义 二:实验目标 1):理解并会用文件的压缩归档 2):熟练掌握文件压缩归档的命令 3):理解各种压缩形式的使用环境 4):理解个文件的压缩区别 三:实验步骤 一:压缩的常用形式及命令 1):常用形式 grub.tar grub.tar.bz2 grub.tar.gz grub.tar.zip 2):压缩命令分析 [[email protected] test]#tar -

linux下各种文件压缩解压(转载)

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲tar命令的基本用法:  tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面 来举例说明一下:  # tar -cf all.tar *.jpg  这条命令是将所有.jpg的文件打成一个名为all.tar的包.-c是表示产生新的包 ,-f指定包的文件名.  # tar -

【linux相识相知】压缩与打包

我们日常使用window的时候,经常会用到压缩与解压缩,如果要压缩一个文件,右击选择[添加到压缩文件],解压缩则右击选择[解压到当前文件夹],“点点点”就能完成.但是在一个没有装图形化界面的linux操作系统又不能使用“点点点”,那该怎么操作呢?本文就linux中如何使用压缩和打包工具做出解释. 为什么要压缩文件 压缩的目的是为了就是将文件通过压缩算法转变成一个体积更小格式的文件,减小了文件在硬盘上的占用空间,压缩文件的时候,特别的消耗CPU的时钟周期,因为CPU要进行大量的计算,所有压缩也是一

15、Linux文档的压缩与打包

Linux文档的压缩与打包 概述 compress和uncompress gzip压缩工具 bzip2压缩工具 zip压缩工具 tar压缩工具 cpio压缩工具(主要用来备份还原) Linux文档的压缩与打包 概述 本章将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio) compress/uncompress:    //对应 .Z 结尾的压缩格式文件:gzip/gunzip:            //其对应的是 .gz 结尾的压缩格式文件:bzip2/bunzip2

第11章 linux文档的压缩与打包

1. gzip, bzip2 能否直接压缩目录呢?   不能2. 请快速写出,使用gzip和bzip2压缩和解压一个文件的命令.  压缩 gzip 1.txt ;  解压gzip -d 1.txt.gz bzip 1.txt : 解压bzip -d 1.txt.bz23. tar 在打包的时候,如果想排除多个文件或者目录如何操作?   tar -cvf file.tar --exclude.a.txt --exclude b.txt 123/4. 请实验,如果不加 "-" 是否正确,

linux下常见的压缩指令

# touch 2022 # gzip 2022        ( 源文件被删除 ) # gzip -d 2022.gz # gzip 2022        ( 不可以用来压缩目录 ) # gunzip 2022.gz # zip services.zip /etc/services # zip -r etc.zip /etc        ( 可以压缩目录 ) # unzip services.zip # bzip2 2022 # bunzip2 2022.bz2 # bzip2 -k 20

Linux下搜索文件find、which、whereis、locate

Linux下搜索文件find.which.whereis.locate: - which 寻找“执行文件” - -a 将所有可找到的命令均列出,而不仅仅列出第一个找到的命令名称 - whereis 寻找特定文件   whereis [-bmsu] 文件或目录 - -b : 只找二进制文件 - -m : 只找在帮助文件manual路径下的文件 - -s :  只找源文件 - -u :  没有帮助文件的文件 - locate [filename] -- 例:  locate passwd - fin

linux下修改文件的用户组chgrp和文件所有者chown

1. linux下修改文件用户组 chgrp: change group的简写,修改文件所属的用户组. chgrp users test.log 修改后查看 ls -l -rwxrwx--- 1 work users 0 Jun 8 15:46 test.log 如果要修改该目录下所有文件和目录,使用-R参数. chgrp -R users test 要被改变的group名,必须在 /etc/group 文件中. /etc/group文件记录系统中所有的组名称. 2. linux下修改文件所有者