文件的压缩、解压缩和打包命令

压缩命令:     compress       gzip      bzip2      xz        等

解压缩命令:  uncompress   gunzip  bunzip2   unxz     等

打包(归档)命令: tar   cpio

其中compress、gzip、bzip2和xz只能用于单个压缩文件,不能用于压缩目录

compress: .Z   最古老的压缩命令

compress  /PATH/TO/FILENAME          -----> FILENAME.Z

uncompress FILENAME.Z

gzip: .gz           
    gzip /PATH/TO/SOMEFILE:    压缩完成后会删除原文件
        -d: decompress
        -#:1-9,指定压缩比,默认是6;

gunzip  相当于 gzip -d

zcat  将信息解压到stdout压缩文件没有发生改变。

即不解压的情况,查看文本文件的内容。

[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
[[email protected] tar]# gzip messages
[[email protected] tar]# ls -lh
total 152K
-rw-------. 1 root root 152K Aug 12 10:44 messages.gz
[[email protected] tar]# gunzip messages.gz
[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
[[email protected] tar]# gzip messages
[[email protected] tar]# gzip -d messages.gz
[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
[[email protected] tar]# gzip messages
[[email protected] tar]# zcat messages.gz | wc -l
14026

bzip2: .bz2
比gzip有着更大压缩比的压缩工具,使用格式近似
    bzip2 /PATH/TO/SOMEFILE
        -d    
        -#: 1-9,默认是6
        -k: 压缩时保留原文件
        
    bunzip2 /PATH/TO/SOMEFILE.bz2
    bzcat         decompresses files to stdout

[[email protected] tar]# ls -lh
total 56K                                 -------比gzip压缩能力更强大。
-rw-------. 1 root root 55K Aug 12 10:44 messages.bz2
[[email protected] tar]# bzip2 -k messages
[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  55K Aug 12 10:44 messages.bz2

xz: .xz
    xz /PATH/TO/SOMEFILE
        -d
        -#: 1-9, 默认是6
        -k: 压缩时保留原文件

unxz               is equivalent to xz --decompress.
    xzcat/xzdec     is equivalent to xz --decompress --stdout.

[[email protected] tar]# xz messages
[[email protected] tar]# ls -lh
total 36K                 ------------------压缩能力更强
-rw-------. 1 root root 34K Aug 12 10:44 messages.xz
[[email protected] tar]# xz -dk messages.xz
[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
[[email protected] tar]# unxz messages.xz -k
[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz

zip - package and compress (archive) files

zip: 既归档又压缩的工具              众多OS默认支持此功能

zip is a compression and file  packaging  utility  for  Unix,  VMS,
    MSDOS,  OS/2, Windows 9x/NT/XP, Minix, Atari, Macintosh, Amiga, and
    Acorn RISC OS.  It is analogous to a combination of the  Unix  com-
    mands  tar(1)  and  compress(1)  and is compatible with PKZIP (Phil
    Katz’s ZIP for MSDOS systems).

zip FILENAME.zip FILE1 FILE2 ...: 压缩后不删除原文件
    unzip FILENAME.zip

[[email protected] tar]# ls -lh
total 1.2M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
[[email protected] tar]# zip messages.zip messages*
  adding: messages (deflated 87%)
  adding: messages.xz (deflated 0%)
[[email protected] tar]# ls -lh
total 1.4M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 11:33 messages.zip
[[email protected] tar]# unzip messages.zip
Archive:  messages.zip
replace messages? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: messages                
replace messages.xz? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: messages.xz             
[[email protected] tar]# ls -lh
total 1.4M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 11:33 messages.zip

archive: 归档,归档本身并不意味着压缩

tar: .tar   归档工具

GNU  ‘tar’  saves  many  files  together into a single tape or disk archive,

and can restore individual files from the archive.

-c: 创建归档文件
    -f FILE.tar: 归档文件(目的文件)               use archive file or device ARCHIVE
    -x: 展开归档                                           extract files from an archive
    --xattrs: 归档时,保留文件的扩展属性信息
    -t: 不展开归档,直接查看归档了哪些文件       --list    list the contents of an archive

-v, --verbose
              verbosely list files processed

-z, --gzip
              filter the archive through gzip
    -zcf: 归档并调用gzip压缩
    -zxf: 调用gzip解压缩并展开归档,-z选项可省略

-j, --bzip2
              filter the archive through bzip2
    -jcf: bzip2
    -jxf: 调用bzip2解压缩并展开归档,-z选项可省略

-J, --xz
              filter the archive through xz
    -Jcf: xz   rhel6
    -Jxf:

tar -cf archive.tar foo bar
              # Create archive.tar from files foo and bar.

tar -tvf archive.tar
              # List all files in archive.tar verbosely.

tar -xf archive.tar
              # Extract all files from archive.tar.

[[email protected] tar]# ls -lh
total 1.4M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 11:33 messages.zip

[[email protected] tar]# tar -cf messeages.tar messages*
[[email protected] tar]# ls -lh
total 2.7M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 11:33 messages.zip
-rw-r--r--. 1 root root 1.4M Aug 12 11:57 messeages.tar
[[email protected] tar]# tar -xvf messeages.tar
messages
messages.xz
messages.zip
[[email protected] tar]# ls -lh
total 2.7M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 11:33 messages.zip
-rw-r--r--. 1 root root 1.4M Aug 12 11:57 messeages.tar

[[email protected] tar]# rm -f messages.tar

[[email protected] tar]# tar -zcvf messages.tar.gz mess*
messages
messages.xz
messages.zip
[[email protected] tar]# ls -lh
total 1.7M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-r--r--. 1 root root 362K Aug 12 12:26 messages.tar.gz
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 12:17 messages.zip
messages
messages.xz
messages.zip
[[email protected] tar]# ls -lh
total 1.7M
-rw-------. 1 root root 1.2M Aug 12 10:44 messages
-rw-r--r--. 1 root root 362K Aug 12 12:26 messages.tar.gz
-rw-------. 1 root root  34K Aug 12 10:44 messages.xz
-rw-r--r--. 1 root root 186K Aug 12 12:17 messages.zip

...

cpio - copy files to and from archives

[[email protected] tar]# cp /boot/initramfs-2.6.32-573.el6.x86_64.img .

[[email protected] tar]# file /boot/initramfs-2.6.32-573.el6.x86_64.img
/boot/initramfs-2.6.32-573.el6.x86_64.img: gzip compressed data, from Unix, last modified: Wed Jan  6 08:43:04 2016, max compression

[[email protected] tar]# mv initramfs-2.6.32-573.el6.x86_64.img initramfs-2.6.32-573.el6.x86_64.img.gz
[[email protected] tar]# gzip -d initramfs-2.6.32-573.el6.x86_64.img.gz

[[email protected] tar]# file initramfs-2.6.32-573.el6.x86_64.img
initramfs-2.6.32-573.el6.x86_64.img: ASCII cpio archive (SVR4 with no CRC)

时间: 2024-10-22 07:56:48

文件的压缩、解压缩和打包命令的相关文章

Linux下常用压缩解压缩、打包命令使用演示

实验系统环境:      [[email protected] tmp]# cat /etc/issue      CentOS release 6.6 (Final)      Kernel \r on an \m [[email protected] tmp]# cat /etc/redhat-release       CentOS release 6.6 (Final)      [[email protected] tmp]# uname -a      Linux cacti.get

常见压缩/解压缩及打包命令

1.常见的压缩文件案扩展名 *.Z *.gz *.bz2 *.tar *.tar.gz *.tar.bz2 2.Compress(不常用) 压缩:compress [-rcv] 文件或目录 参数: -r:可以连同目录下的文件也同时给予打印 -c:将压缩数据输出成为standard output(输出到屏幕) -v:可以显示出压缩后的文件信息以及压缩过程中的一些文件名变化 解压缩:uncompress *.Z 3.gzip,zcat gzip [-cdtv#] 文件名 参数: -c:将压缩的数据输

压缩解压缩 和 打包解打包 命令

常见压缩文件Windows .rar .zip .7zLinux .zip .gz .bz2 .xz .tar .bz2 .tar .xz gzip 压缩工具 gzip 4 >>> .gz格式压缩 gzip 文件名解压缩 gizp -d 压缩文件.gz gunzip 解压缩 也可以gizp -1 (1-9) 压缩级别 默认6级别.1级压缩的最不严谨,9级压缩最严谨 flie 命令查看文件 zcat 可以看 是先解压在查看 gzip -c 保留原文件 gzip 不能压缩 目录 bzip b

C# 文件/文件夹压缩解压缩

项目上用到的,随手做个记录,哈哈. 直接上代码: 1 using System; 2 using System.Data; 3 using System.Configuration; 4 using System.Collections.Generic; 5 using System.IO; 6 using ICSharpCode.SharpZipLib.Zip; 7 using ICSharpCode.SharpZipLib.Checksums; 8 namespace BLL 9 { 10

Linux下 文件夹 压缩 解压缩 打包

http://blog.sina.com.cn/s/blog_7479f7990100zwkp.html tar -zcvf /home/xahot.tar.gz /xahot tar -zcvf 打包后生成的文件名全路径 要打包的目录 例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件. tar -zcvf  /home/xahot.tar.gz /xahot 如果提示不要"/" 则写作 tar -zcvf  /home/xahot.tar.gz  x

【linux学习笔记六】压缩 解压缩命令

所有的压缩文件一定要写压缩格式的扩展名 .zip格式压缩 #压缩文件 zip 压缩文件名 源文件 #压缩目录 zip -r 压缩文件名 源目录 #解压缩 unzip 压缩文件 .gz格式压缩 #压缩为.gz格式的压缩文件 源文件会消失 gzip 源文件 #压缩为.gz格式的压缩文件 源文件保留 gzip -c 源文件 > 压缩文件 #压缩目录下所有的子文件 但不能压缩目录 gzip -r 目录 #解压缩 gzip -d 压缩文件 gunzip 压缩文件 .bz2格式压缩 #压缩为.bz2格式 不

Linux文件打包压缩、解压缩、备份命令使用方法(转载)

对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了.本文就来对这些常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被搞晕ic

关于文件与文件系统的压缩与打包命令-Linux(笔记)

1.gzip : 压缩命令 gzip [-cdtv#] 文件名称 (后缀为.gz) -c :将压缩的数据输出到屏幕上,可通过数据流重定向处理 -d : 解压缩的參数 -v : 能够显示源文件/压缩文件的压缩比等信息 -# :压缩等级.-1最快,-9最慢,默认-6 2.zcat : 读取压缩文件 zcat 文件名称.gz 3.bzip2 :压缩命令 bzip2 [-cdkzv#] 文件名称 (后缀为.bz2) 4.bzcat : 读取压缩文件 bzcat 文件名称.bz2 5.tar : 打包命令

第九章、文件与文件系统的压缩与打包 3. 打包命令: tar

打包命令: tar gzip 与 bzip2 也能够针对目录来进行压缩, 不过,这两个命令对目录的压缩指的是『将目录内的所有文件 "分别" 进行压缩』! 将多个文件或目录包成一个大文件的,『打包命令』 tar [[email protected] ~]# tar [-j|-z] [cv] [-f 创建的档名] filename... <==打包与压缩 [[email protected] ~]# tar [-j|-z] [tv] [-f 创建的档名] <==察看档名 [[e