精华内容
下载资源
问答
  • Linux压缩打包命令——tar、zip、unzip

    万次阅读 多人点赞 2019-08-16 18:39:08
    打包跟压缩的区别: 打包是指将多个文件或者目录放在一起,形成一个总的包,这样便于保存和传输,但是大小是没有变化的,压缩是指...tar命令参数前面加不加“-”执行命令的结果是没有区别的,区别只要是在与linux风...

     

    打包跟压缩的区别:

    打包是指将多个文件或者目录放在一起,形成一个总的包,这样便于保存和传输,但是大小是没有变化的,压缩是指将一个或者多个大文件或者目录通过压缩算法使文件的体积变小以达到压缩的目的,可以节省存储空间,在压缩的时候通常是先打包再压缩;

    tar命令

    tar命令参数前面加”-"与不加“-”的区别:

    tar命令参数前面加不加“-”执行命令的结果是没有区别的,区别只要是在于linux风格方面,加“-”属于System V风格,不加“-”属于BSD风格,所以在使用tar命令的时候它的参数加不加“-”结果是一样的,看个人的使用方式;

    常用参数:

    tar命令的常用参数
    -z 是否同时具有gz属性
    -j 是否同时具有bz2属性
    -J 是否同时具有xz属性
    -x 解压缩、提取打包的内容
    -t 查看压缩包内容
    -c 建立一个压缩,打包文档
    -C 切换到指定目录,表示指定解压缩包的内容和打包的内容存放的目录
    -v 显示压缩或者打包的内容
    -f 使用文件名,在f后面要接压缩后的文件的名字,只要用到tar命令,-f选项是必须要用的,-f参数在使用的时候一定排在其他参数的后面,在最右边
    -p 保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
    -P 保留绝对路径

     

    一、打包

    实例:

    a.将/root/下的ceshi.txt文件和anaconda-ks.cfg文件和time.sh文件打包为一个文件,名称为“jihe.tar”:

    b.查看jihe.tar文件的内容:

    c.提取jihe.tar文件的内容到/opt目录下:

    如果不用“-C”指定目录则会提取内容到当前目录

    二、压缩

    linux主要有三种压缩方式:
    1.gzip:是公认的压缩这速度最快,压缩大文件的时候与其他的压缩方式相比更加明显,历史最久,应用最广泛的压缩方式
    2.bzip:压缩形成的文件小,但是可用性不如gzip
    3.xz:是最新的压缩方式,可以自动提供最佳的压缩率

    建议的压缩的时候标明后缀:

    参数 作用 命名方式
    -z 用于gzip压缩方式 文件名.tar.gz
    -j 用于bzip2压缩方式 文件名.tar.bz2
    -J 用于xz压缩方式 文件名.tar.xz

     

    实例:用不同的压缩方式压缩/root/目录下的Golden.apk文件

    先查看Golden.apk文件的大小:

    可以看到Golden.apk文件的大小为187M

    a.用gzip压缩方式将Golden.apk文件压缩为Golden.apk.tar.gz文件:

    b.用bzip2的压缩方式将Golden.apk文件压缩为Golden.apk.tar.bz2文件:

    从上图可以看出红色方框内有报错,这个报错的原因是缺少bzip2的包,需要安装一个bzip2软件包

    安装完成之后再重新压缩:

    在压缩的过程中,我们可以发现:

    压缩速度:gz > bz2 > xz
    压缩率:xz > bz2 > gz

    三、解压

    先删除/root/目录下的Golden.apk文件:

    tar命令式一个很聪明的命令,我们在解压的时候不需要指明自己压缩的方式它会自己选择跟压缩方式对应的方式去解压,这话说得有点拗口,例:

    a.将Golden.apk.tar.gz解压到当前目录:

    在解压gz压缩方式压缩文件的时候并不需要加上-z,直接用参数-xf即可,另外两种压缩方式在解压的时候一样,因为tar命令会自动选择,解压之后压缩文件还在,如果不指定解压出来的文件保存在哪里,那么会直接解压在当前目录

    b.指定解压出来的文件保存的目录,将Golden.apk.tar.bz2文件解压在/opt/目录下:

    补充:

    a.在打包和压缩的过程中,我们有时候会看到这样的语句:tar: 从成员名中删除开头的“/”,这个并不是报错,是因为没有加上-P选项,没有保留原来的绝对路径去打包或者压缩,提取打包的内容跟解压一样,下面举一个例子:

    将/root/目录以gzip的方式压缩为root.tar.gz压缩文件:

    1.没有加-P选项:

    2.加上-P选项:

    解压的时候同理,如果在压缩文件的时候使用了-P选项,那么在解压的时候也要加上-P选项,不然也会出现”tar: 从成员名中删除开头的“/”“,如下图:

    1.不加-P选项解压使用了-P选项压缩/root/后的root.tar.gz文件:

    2.加上-P选项解压使用了-P选项压缩/root/后的root.tar.gz文件:


    b.在使用tar压缩或者打包的时候,可以通过增加--exclude来达到排除指定的文件的目的

    将/root/目录下的harry目录打包,但是不打包harry目录下的ha.txt文件,如下图:

    压缩文件也是同理,想要排除指定的目录压缩或者打包也是同理

    zip命令和unzip命令

    #在使用zip跟unzip命令之前先查看系统有没有安装这两个命令的包,没有的话要自己安装
    查看有没有安装zip跟unzip命令的命令:

    rpm -q zip unzip

    如果有安装了命令则会显示出命令的版本号

    zip命令

    基本用法:

    zip [参数] [压缩包名] [压缩的目录或者文件的路径]

    常用参数:

    zip命令的常用参数
    -m 将文件压缩后,删除原文件
    -o 将压缩文件内的所有文件的最新变动时间设为压缩的时间
    -q 安静模式,在压缩的时候不显示指令执行的过程
    -r 递归压缩,将自定目录下的所有子文件以及文件一起处理
    -x ”文件列表“,压缩时排除文件列表中的文件

     

    实例:

    a.压缩目录,将/root/目录下的harry目录压缩为名为harry.zip压缩包:

    1.正常压缩,不加-q选项,显示压缩的过程:

    2.加上-q选项,安静模式输出,不显示压缩的过程:

    b.压缩多个文件,将/root/目录下的ceshi.txt文件和anaconda-ks.cfg文件和Golden.apk文件压缩为名为jihe.zip的压缩包:

    因为压缩的全是文件,所以可以不用加上-r选项

    c.压缩文件跟目录,将/root/下的ceshi.txt文件和anaconda-ks.cfg文件和harry目录压缩成名为dajihe.zip的压缩包:

    d.将/root/目录下的harry目录压缩为harry1.zip压缩包,排除harry目录下的ha.txt文件:

    unzip命令

    基本用法:

    unzip [参数] [压缩文件]  (-d [目录])  //如果不是用括号里面的内容,则解压文件在当前工作目录

    常用参数:

    unzip命令的常用参数
    -c 将解压缩的结果显示到屏幕上(显示每一个目录下的每一个文件的内容),同时对字符做适当的转换,但是并没有解压压缩包
    -l 显示压缩文件内所包含的文件
    -t 检查压缩文件是否正确
    -v 执行时显示压缩文件的详细信息
    -q 安静模式,执行时不显示任何信息
    -d 指定文件解压后存储的目录
    -x 指定不要处理压缩文件中的那些文件

    实例:

    a.将harry.zip压缩包解压缩的结果显示出来:

    具体会显示到每一个文件跟每一个文件的内容

    b.显示jihe.zip压缩包里面锁包含的文件

    c.检查dajihe.zip压缩文件是否正确:

    全部OK表示全部文件都是正确的

    d.不解压压缩文件dajihe.zip,查看压缩包里面的内容(查看显示的文件列表还包含压缩比率):

    #使用-v显示的信息比使用-l显示的信息更加详细

    e.将dajihe.zip压缩包解压到/opt/目录下:

    补充:使用r选项增加.tar归档文件的内容应该如何怎么操作?

    我们先来了解一下tar命令-r选项的作用:

    通过tar --help命令查看帮助

    -r选项的作用:把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中

    使用实例:

    看上图,可以看到我ops用户家目录下标记了一个文件,一个目录,我现在先将目录归档,然后再将文件追加到档案里面

    1.归档操作

    生成.tar文件,目录归档完毕!

    2.将calculating_time.sh追加进入.tar文件中

    3.验证

    a.查看.tar文件的归档信息

    可以看到calculating_time.sh文件已经被追加到档案的末尾了

    b.提取Check_Configuration_20201118_PM.tar 到/mnt目录下

    使用-r选项追加文件至.tar文件成功

    展开全文
  • Linux zip 加密压缩

    万次阅读 2016-03-03 15:30:32
    最近需要将商户数据文件zip后提供给合作伙伴下载,为了防止数据泄露在zip的时候进行了加密,使用命令如下:[root@w01 groupon_cn]# zip yule shop_20160303....20160303.zip 是生成的压缩文件,/home/filesystem/haibo

    最近需要将商户数据文件zip后提供给合作伙伴下载,为了防止数据泄露在zip的时候进行了加密,使用命令如下:

    [root@w01 groupon_cn]# zip -P yule shop_20160303.zip /home/filesystem/haibo/output/shop/20160303.txt

    其中shop_20160303.zip 是生成的压缩文件,/home/filesystem/haibo/output/shop/20160303.txt 是需要被压缩的文件。

    现在使用unzip命令解压shop_20160303.zip文件,会提示要输入密码了,如下:
    这里写图片描述

    最后,附上zip命令使用手册
    zip [参数] <压缩包> <源文件>
    使用zip格式打包文件
    -r 递归,将指定目录下的所有文件和子目录一并处理
    -S 包含系统和隐藏文件
    -y 直接保存符号连接,而非该连接所指向的文件
    -X 不保存额外的文件属性
    -m 将文件压缩并加入压缩文件后,删除源文件
    -<压缩级别> 1~9,数字越大,压缩率越高
    -F 尝试修复已损坏的压缩文件
    -T 检查备份文件内的每个文件是否正确无误
    -q 不显示指令执行过程
    -g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件
    -u 更新压缩包内文件
    -f 更新压缩包内文件。如果符合条件的文件没有包含在压缩包中,则压缩后添加
    -$ 保存第一个被压缩文件所在磁盘的卷标
    -j 只保存文件名称及其内容
    -D 压缩文件内不建立目录名称
    -i <表达式> 压缩目录时,只压缩符合条件的文件
    -x <表达式> 排除符合条件的文件
    -n <文件名后缀> 排除指定文件名后缀的文件
    -b <缓存路径> 指定临时文件目录
    -d <表达式> 从压缩文件内删除指定的文件
    -t <日期时间> 把压缩文件的日期设成指定的日期
    -o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同
    -A 调整可执行的自动解压缩文件
    -c 替每个被压缩的文件加上注释
    -z 替压缩文件加上注释
    -k 使用MS-DOS兼容格式的文件名称。
    -l 压缩文件时,把LF字符置换成LF+CR字符。
    -ll 压缩文件时,把LF+CR字符置换成LF字符。

    unzip [参数] <压缩文件> [压缩包中将被释放的文件]
    解压zip压缩包文件
    -P <密码> zip压缩包的密码
    -d <路径> 指定解压路径
    -n 解压缩时不覆盖原有文件
    -f 覆盖原有文件
    -o 不经询问,直接覆盖原有文件
    -u 覆盖原有文件,并将压缩文件中的其他文件解压缩到目录中
    -l 显示压缩文件内所包含的文件
    -t 检查压缩文件是否正确
    -z 显示压缩包注释
    -Z unzip -Z等于执行zipinfo指令
    -j 不处理压缩文件中原有的目录路径
    -C 压缩文件中的文件名称区分大小写
    -L 将压缩文件中的全部文件名改为小写
    -s 将文件名中的空格转换下划线
    -X 解压缩时保留文件原来的UID/GID
    -q 执行时不显示任何信息
    -v 执行是时显示详细的信息
    -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换
    -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
    -a 对文本文件进行必要的字符转换
    -b 不要对文本文件进行字符转换
    -x <表达式> 处理里排除压缩包中的指定文件
    -M 将输出结果送到more程序处理

    展开全文
  • Linux系统zip压缩命令

    2021-01-14 21:47:15
    不管是在 Windows 系统还是 Linux 系统中,我们常常会有一些大文件,特别占磁盘空间,对于这种占用空间大的文件我们很多时候就要用到 ZIP压缩文件格式),ZIP 文件格式是一种数据压缩和文档储存的文件格式。...

    不管是在 Windows 系统还是 Linux 系统中,我们常常会有一些大文件,特别占磁盘空间,对于这种占用空间大的文件我们很多时候就要用到 ZIP(压缩文件格式),ZIP 文件格式是一种数据压缩和文档储存的文件格式。除此之外,我们在工作或者学习中,难免需要给对方发送文件,而对于目录文件来说,大部分时候都不能直接发送,需要压缩之后才可以。在 Windows 中压缩文件很简单,只要你有压缩工具,随便点点就可以对一个文件夹进行压缩,而 Linux 不一样,只能通过命令行来操作,那么本文就带大家学习一下如何在 Linux 中压缩文件。

    ZIP 命令功能介绍:

    ZIP 压缩格式是 Windows 与 Linux 等多平台通用的压缩格式,通常使用 zip 压缩过的文件都是以后缀名 ".zip" 结尾的,很好区分。根 GZIP 命令相比,zip 命令压缩文件不仅不会删除源文件,而且还可以压缩目录。

    语法格式:

    zip [option] [file]
    zip [选项] [文件或目录]

    常用参数选项:

    -r:将指定目录下的所有文件和子目录一并压缩 -x:压缩文件时排除某个文件 -q:不显示压缩信息

    介绍了 zip 命令的语法格式和常用参数选项,那么如果系统上没有这个命令说在多也没用,这里顺带也为大家介绍一下在 Linux 系统中 zip 命令的安装,当我们执行 zip 命令如果提示 「 -bash: zip: command not found 」,那就说明我们需要安装这个命令了。安装命令其实也很简单。

    $ apt-get install zip
    $ yum install zip

    image-20201116230700582

    不同操作系统,安装的命令也不一样,安装了 zip 可以实现压缩,那么解压缩是不是也需要学习一下如何安装呀,很好理解,zip 是压缩,那么解压就是 unzip ,是不是觉得很简单,同样的,安装起来也很容易,一条简单的命令即可搞定:

    $ apt-get install unzip
    $ yum install unzip

    image-20201116230909183

    其实 zip 的使用也很简单,下面就为大家用几个示例来说明:

    压缩文件:

    $ cd /test
    $ cp /etc/services ./
    $ ll -h
    total 680K   
    -rw-r--r--    1 root     root      676.0K Nov 15 15:10 services
    
    可以看到,这个文件的大小目前时 676k,下面我们执行压缩命令以后,直接变成了 139.3K,也可以看到提示,差不多压缩了 79%,可以说是压缩的非常狠了。
    deflated:表示压缩率。
    
    $ zip services.zip ./services 
      adding: services (deflated 79%)
    $ ll -h
    total 820K   
    -rw-r--r--    1 root     root      676.0K Nov 15 15:10 services
    -rw-r--r--    1 root     root      139.3K Nov 15 15:11 services.zip

    刚刚演示的是对文件的压缩,目录使用 zip 也可以进行压缩,如下:

    $ zip etc.zip /etc/
    adding: etc/ (stored 0%)    这里表示只是压缩目录这一个文件,目录下的文件没有压缩。
    
    $ zip -r etc.zip /etc/        使用 '-r' 选项递归压缩
    updating: etc/ (stored 0%)
    adding: etc/netconfig (deflated 59%)
    adding: etc/cron.weekly/ (stored 0%)
    adding: etc/rhsm/ (stored 0%)
    adding: etc/rhsm/syspurpose/ (stored 0%)
    adding: etc/rhsm/syspurpose/valid_fields.json (deflated 45%)
    adding: etc/shadow- (deflated 59%)
    ......

    排除压缩:

    $ zip shadow.zip ./shadow -x /test/passwd 
      adding: shadow (deflated 56%)
    $ ll -h
    total 832K   
    -rw-r--r--    1 root     root        1.8K Nov 15 15:21 passwd
    -rw-r--r--    1 root     root      676.0K Nov 15 15:10 services
    -rw-r--r--    1 root     root      139.3K Nov 15 15:11 services.zip
    ----------    1 root     root        1.1K Nov 15 15:21 shadow
    -rw-r--r--    1 root     root         656 Nov 15 15:22 shadow.zip

    使用选项 -x 指定不压缩的文件,从结果里可以很明显的看出来,passwd 并没有被压缩。以上就是今天的内容,zip 是一个广泛使用的压缩命令,算是一个比较实用的命令,感兴趣的伙伴快去练习吧!

    展开全文
  • Linux下gzip, bzip2, zip压缩率的比较

    万次阅读 2012-10-11 11:19:16
    Linux下的压缩工具很多,常用的格式有tar.gz, tar.bz2, zip等 简单比较一下: tar -zcvf etc.tar.gz /etc tar -jcvf etc.tar.bz2 /etc zip -ry etc.zip /etc 注意, zip命令要加上两个选项 -r 表示递归目录...

    Linux下的压缩工具很多,常用的格式有tar.gz, tar.bz2, zip等

    简单比较一下:

    tar -zcvf etc.tar.gz /etc
    tar -jcvf etc.tar.bz2 /etc
    zip -ry etc.zip /etc

    注意, zip命令要加上两个选项

    -r 表示递归目录,不然只压出来一个空目录

    -y 表示保持符号链接,而不用把符号链接指向的文件也压进来

    比较一下结果:

    [root@centos6-244-desktop tmp]# ll -h
    总用量 25M
    -rw-r--r--. 1 root root 7.1M 10月 11 11:13 etc.tar.bz2
    -rw-r--r--. 1 root root 8.2M 10月 11 11:13 etc.tar.gz
    -rw-r--r--. 1 root root 8.8M 10月 11 11:13 etc.zip
    

    可以看到:

    压缩率bzip2 > gzip > zip


    zip的通用性较好,而现在windows下软件winrar,7zip等对tar.gz的支持也非常好。推荐用tar.gz,bzip2要耗费更多的cpu

    展开全文
  • Linuxzip加密压缩

    万次阅读 2017-12-01 13:00:47
    Linuxzip加密压缩 # zip -rP abc#123 test.zip test.txt -P abc#123 是加密密码 -r 递归,将指定目录下的所有文件和子目录一并处理 test.zip 是生成的压缩文件 test.txt 是被压缩的文件 zip [参数] ...
  • bzip2 gzip压缩率Compress/uncompress files are frequent operations. The normal tools for compressing/uncompressing in Linux is gzip, bzip2, 7z, rar and zip. This post introduces how to compress and ...
  • 一、压缩/解压缩工具压缩比:压缩前后文件体积大小比例压缩算法:通过分析数据存储模式实现 ,CPU资源占用换取磁盘空间1.gzip/gunzip/zcat - compress or expand files压缩或者展开文件gzip [OPTION]......
  • linux下很多人都在大量的使用压缩工具,那种压缩工具最具有效率?
  • linux压缩命令常用:tar,tgz,gzip,zip,rar

    万次阅读 多人点赞 2018-06-02 11:27:14
    linux压缩命令常用的有三个:tar,tgz,gzip,zip 一,tar (一) tar压缩命令 tar -cvf examples.tar files|dir #说明: -c, --create create a new archive 创建一个归档文件 -v, --verbose verbosely list...
  • 2020/06/10 周三 41)tar 打包 tar -cvf a.tar 1.txt 2.txt f必须最后,f后的第一个参数代表要生成的文件名,...42)压缩 解压 1、gzip 压缩 tar -zcf a.tar.gz *txt 以gzip的方式打包并压缩 解压 tar -zxf a.tar.gz
  • Linux下如何使用zip压缩、解压和加密

    万次阅读 2015-01-23 18:05:56
    Linux下如何使用zip压缩、解压和加密 一般linux下都默认安装了zip解压缩,通常格式如下(包含详细的参数中文解释): # zip -rP abc#123 test.zip test.txt -P abc#123 是加密密码 -r 递归,将指定目录下...
  • 1、把/home目录下面的mydata目录压缩为mydata.zip zip -r mydata.zip mydata #压缩mydata目录 2、把/home目录下面的mydata.zip解压到mydatabak目录里面 unzip mydata.zip -d mydatabak 3、把/home目录下面的abc...
  • 1、zip 功能说明:压缩文件。语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b &lt;工 作目录&gt;][-ll][-n &lt;字 尾字符串&gt;][-t &...]补充说明:zip是个使用广泛的压缩程序,...
  • 在Windows中,我们用得最多的解压缩软件就是WinRAR了,这个软件对我们实现解压缩非常...怎样用zip压缩多个文件呢? 语法: zip {.zipfile-name} {file-names} #zip var-log-files.zip /var/log/* adding: var/log/acpid
  • Linux 解压,压缩文件--zip unzip

    千次阅读 2019-08-14 22:26:18
    其实在Linux中,有许多种解压,压缩文件的命令,本博客介绍zip 、unzip 命令 如果Linux 系统不能运行zip 、unzip 命令的朋友,先安装一下: 1)安装 1.apt-get 方式安装: sudo apt-get install zip 2.yum ...
  • RAR 格式较 ZIP 格式压缩率较高,但压缩时间远远高于 ZIPZip 命令行工具可以实现对 zip 属性的包进行管理,也可以将文件及文件及打包成 zip 格式 常见参数 -f freshen:只更改文件; -u update:只更改或新文件; ...
  • 出处:http://www.linuxidc.com/Linux/2012-08/68122.htm ...缺点就是支持的压缩率不是很高,而tar.gz和tar.gz2在压缩率方面做得非常好。闲话少说,我们步入正题吧: 我们可以使用下列的命令
  • linuxzip加密压缩文件

    千次阅读 2016-11-12 22:38:56
    zip -q -r -P password zipfile.zip sourcefiles.txt...zipfile.zip 是生成的压缩文件 sourcefiles.txt 是被压缩的文件   zip [参数]   使用zip格式打包文件  -r 递归,将指定目录下的所有文件和子目录一并
  • 压缩比及压缩速度测试:$ head -n 2000 cc_detail_201608.sql > 1$ time tar -c –lzma -f 1.glz 1real 23m44.216s$ time tar -c –xz -f 1.gxz 1real 25m26.296s$ time tar -czf 1.tgz 1real 1m17.476s$ time tar...
  • 我们经常需要对文件压缩或打包实现统一管理,下面就让我们来看看gzip、bzip2、tar、zip这些命令的使用 (1) gzip 格式:gzip [选项] [文件] 示例: ---在testzip目录下有以下文件 ---对目录下的所有文件使用gzip...
  • 注:*压缩成限.zip格式文件 常用解压缩: [root@mysql test]# unzip -o test.zip -d tmp/ 将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件。 常用压缩: [root...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,840
精华内容 4,736
关键字:

linuxzip压缩压缩率

linux 订阅