linux---压缩与解压缩命令

常用压缩格式: .zip .gz .bz2

  1. .zip 格式压缩
    命令格式:

      1)压缩文件:   zip 压缩文件名    源文件
        [root@livedvd home]# zip  test.zip  test.txt
          adding: test.txt (stored 0%)
        [root@livedvd home]# ll
        total 12
        drwx------. 26 centoslive centoslive 4096 Aug 12 07:40 centoslive
        -rw-r--r--.  1 root       root          9 Aug 12 07:53 test.txt
        -rw-r--r--.  1 root       root        175 Aug 12 07:54 test.zip
    
      2)压缩目录:  zip  -r  压缩文件名   源目录
        [root@livedvd home]# mkdir music
        [root@livedvd home]# zip -r music.zip music
          adding: music/ (stored 0%)
        [root@livedvd home]# ll
        total 20
        drwx------. 26 centoslive centoslive 4096 Aug 12 07:40 centoslive
        drwxr-xr-x.  2 root       root       4096 Aug 12 07:58 music
        -rw-r--r--.  1 root       root        162 Aug 12 07:58 music.zip
        -rw-r--r--.  1 root       root          9 Aug 12 07:53 test.txt
        -rw-r--r--.  1 root       root        175 Aug 12 07:54 test.zip
    
     3)解压命令: unzip 压缩文件
        [root@livedvd home]# unzip music.zip 
        Archive:  music.zip
           creating: music/
        [root@livedvd home]# unzip test.zip 
        Archive:  test.zip
         extracting: test.txt                
        [root@livedvd home]# ll
        total 20
        drwx------. 26 centoslive centoslive 4096 Aug 12 07:40 centoslive
        drwxr-xr-x.  2 root       root       4096 Aug 12 07:58 music
        -rw-r--r--.  1 root       root        162 Aug 12 07:58 music.zip
        -rw-r--r--.  1 root       root          9 Aug 12 07:53 test.txt
        -rw-r--r--.  1 root       root        175 Aug 12 07:54 test.zip
    
  2. .gz 格式压缩

        1)gzip  源文件(压缩为.gz格式的压缩文件,源文件会消失)
            [root@livedvd home]# ls
            centoslive  music  test.txt
            [root@livedvd home]# gzip  test.txt 
            [root@livedvd home]# ls
            centoslive  music  test.txt.gz
    
      2)gzip  -c  源文件  >   压缩文件(压缩为.gz格式,源文件保留)
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt.gz
            [root@livedvd home]# gzip -c test1.txt  > test1.txt.gz
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test1.txt.gz  test.txt.gz
    
      3)gzip  -r  目录(压缩目录下所有的子文件,但是不能压缩目录)
        [root@livedvd home]# ls
        centoslive  music  test1.txt  test1.txt.gz  test.txt.gz
        [root@livedvd home]# gzip -r music
        [root@livedvd home]# ls
        centoslive  music  test1.txt  test1.txt.gz  test.txt.gz
        [root@livedvd home]# cd music
        [root@livedvd music]# ls
        music1.txt.gz  music2.txt.gz  music3.txt.gz
    
      4)解压缩文件
           1> gzip  -d  压缩文件
                [root@livedvd home]# ls
                centoslive  music  test1.txt  test1.txt.gz  test.txt.gz
                [root@livedvd home]# gzip -d test.txt.gz 
                [root@livedvd home]# ls
                centoslive  music  test1.txt  test1.txt.gz  test.txt
    
          2>  gunzip  压缩文件
                [root@livedvd home]# ls
                centoslive  music  test1.txt.gz  test.txt
                [root@livedvd home]# gunzip test1.txt.gz 
                [root@livedvd home]# ls
                centoslive  music  test1.txt  test.txt
    
  3. .bz2 格式压缩

          1)bzip2  源文件(压缩为.bz2格式,不保留源文件)
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt
            [root@livedvd home]# bzip2 test.txt 
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt.bz2
    
          2)bzip2  -k  源文件(压缩之后保留文件)
           [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt.bz2
            [root@livedvd home]# bzip2 -k test1.txt 
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test1.txt.bz2  test.txt.bz2
    
        3)bzip2  -d 压缩文件(解压缩,可以用-k保留压缩文件)
           [root@livedvd home]# ls
            centoslive  music  test1.txt.bz2  test.txt.bz2
            [root@livedvd home]# bzip2 -d test1.txt.bz2 
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt.bz2
    
        4)bunzip2  压缩文件(解压缩,可以用-k保留压缩文件)
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt.bz2
            [root@livedvd home]# bunzip2 test.txt.bz2 
            [root@livedvd home]# ls
            centoslive  music  test1.txt  test.txt
    

强调内容
注意:bzip2命令不能压缩目录哦!

常用压缩格式:.tar.gz .tar.bz2

  1. 打包命令tar

     tar  -cvf  打包文件名  源文件
     选项:
           -c:打包
           -v:显示过程
           -f:指定打包后的文件名
    
    [root@livedvd home]# tar -cvf test.txt.tar  test.txt
    test.txt
    [root@livedvd home]# ls
    centoslive  music  test1.txt  test.txt  test.txt.tar
    

    2.解打包命令

      tar  -xvf  打包文件名
        选项:
          -x : 解打包
    
        [root@livedvd home]# ls
        centoslive  music  test1.txt  test.txt.tar
        [root@livedvd home]# tar -xvf test.txt.tar 
        test.txt
        [root@livedvd home]# ls
        centoslive  music  test1.txt  test.txt  test.txt.tar
    

注意:一般如果直接使用打包命令后,我们还需要进行压缩,压缩命令可以使用zip,gzip,bzip。但是这样做明显很麻烦。linux有直接完成打包和压缩的命令。

  1. .tar.gz 压缩格式

     tar  -zcvf  压缩包名.tar.gz  源文件
      (其实 .tar.gz 格式是先打包为.tar格式,再压缩为.gz格式)
     选项:
            -z : 压缩为.tar.gz格式
    
       [root@livedvd home]# ls
        centoslive  music  test1.txt  test.txt  test.txt.tar
        [root@livedvd home]# tar -zcvf  music.tar.gz  music
        music/
        music/music1.txt
        music/music2.txt
        music/music3.txt
        [root@livedvd home]# ls
        centoslive  music  music.tar.gz  test1.txt  test.txt  test.txt.tar
    
    
    tar  -zxvf   压缩包名.tar.gz
      (解压缩.tar.gz格式)
    
       [root@livedvd home]# ls
        centoslive  music.tar.gz  test1.txt  test.txt  test.txt.tar
        [root@livedvd home]# tar -zxvf music.tar.gz 
        music/
        music/music1.txt
        music/music2.txt
        music/music3.txt
        [root@livedvd home]# ls
        centoslive  music  music.tar.gz  test1.txt  test.txt  test.txt.tar
    
  2. .tar.bz2压缩格式

       tar  -jcvf   压缩包名.tar.bz2    源文件
       选项:
             -z :  压缩为.tar.bz2 格式
    
        [root@livedvd home]# ls
        centoslive  music  music.tar.gz  test1.txt  test.txt  test.txt.tar
        [root@livedvd home]# tar -jcvf music.tar.bz2 music
        music/
        music/music1.txt
        music/music2.txt
        music/music3.txt
        [root@livedvd home]# ls
        centoslive  music  music.tar.bz2  music.tar.gz  test1.txt  test.txt  test.txt.tar
    
    
      tar  -jxvf   压缩包名.tar.bz2
       选项:
            -x:解压缩.tar.bz2格式
        [root@livedvd home]# ls
        centoslive  music.tar.bz2  music.tar.gz  test1.txt  test.txt  test.txt.tar
        [root@livedvd home]# tar -jxvf music.tar.bz2
        music/
        music/music1.txt
        music/music2.txt
        music/music3.txt
        [root@livedvd home]# ls
        centoslive  music  music.tar.bz2  music.tar.gz  test1.txt  test.txt  test.txt.tar
    

补充:
1.解压到指定目录:

   使用 -C指定文件解压的位置
   1>命令格式:tar -jxvf  压缩包名.tar.bz2  -C  指定目录
   2>命令格式:tar -zxvf  压缩包名.tar.gz  -C  指定目录

    [root@livedvd home]# ls
    centoslive  music  music.tar.bz2  music.tar.gz  test1.txt  test.txt  test.txt.tar
    [root@livedvd home]# tar -jxvf music.tar.bz2  -C /tmp/
    music/
    music/music1.txt
    music/music2.txt
    music/music3.txt
    [root@livedvd home]# ls /tmp/
    keyring-e1CpgY  orbit-centoslive  pulse-im7WxSjS7T3u  virtual-centoslive.HLjmL8
    music           orbit-gdm         pulse-mAb9tvCxqehz
    [root@livedvd home]# 

2.压缩多个文件

1>命令格式:tar -zcvf  压缩包名.tar.gz  源文件1  源文件2 源文件3 ...
2>命令格式:tar -jcvf  压缩包名.tar.bz  源文件1  源文件2 源文件3 ...
(压缩多个文件 文件直接用空分开)

3.把文件压缩到指定目录下

命令格式: tar -zcvf  指定目录/压缩包名.tar.gz  源文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值