linux下怎样压缩文件和解压缩

发布网友 发布时间:2022-02-26 11:25

我来回答

2个回答

懂视网 时间:2022-02-26 15:47

Linux中如何打包压缩解压文件

设备型号:ThinkPad E15

操作系统: centos7和centos8

软件版本:tar-1.30


用法:tar [OPTION...] [FILE]...

参数:

-ccreate创建文件

-x-extract解压文件

-v--verbose显示执行详细过程

-f--file指定被压缩的文件

-C (大写)--directory   指定解压位置


例:给/boot/grub2目录 打包

[root@xuegod63 ~]#  tar -cvf grub.tar /boot/grub2/  

[root@xuegod63 ~]# ls grub.tar

[root@xuegod63 ~]# tar xvf grub.tar#解压缩

[root@xuegod63 ~]# ls  boot  #查看解压后,得到的boot文件夹中的内容

grub2

例2:把两个目录或目录+文件打包成一个软件包:

[root@xuegod63 ~]# mkdir ./back

[root@xuegod63 ~]# cp /etc/passwd ./back/

[root@xuegod63 ~]# tar -cvf back.tar /boot/grub2  /root/back/ /etc/passwd

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

-rw-r--r-- root/root      1024 2020-06-28 19:46 boot/grub2/grubenv     ###输出内容

-rw-r--r-- root/root      5130 2020-06-28 19:46 boot/grub2/grub.cfg

drwxr-xr-x root/root         0 2020-07-03 14:23 root/back/

-rw-r--r-- root/root      2735 2020-07-03 14:23 root/back/passwd

-rw-r--r-- root/root      2735 2020-06-28 19:49 etc/passwd


2、  tar 归档+压缩

语法:tar czvf newfile.tar.gz SOURCE

语法:tar czvf 压缩后的文件名(tar.gz tar.bz2) 需要压缩的文件或目录

常用参数:

-z, --gzip以gzip方式压缩  扩展名: tar.gz

-j :以bz2方式压缩的  扩展名:tar.bz2

-J:以xz 方式压缩   扩展名:tar.xz


例1:创建.tar.gz 包

[root@xuegod63 ~]#  tar zcvf /root/grub.tar.gz  /boot/grub2  #归档,注意备份的名字后缀

[root@localhost test]# tar zxvf /root/etc.tar.gz   #解压缩

例2:创建.tar.bz2包

[root@xuegod63 ~]# tar -jcvf  grub.tar.bz2 /boot/grub2 

[root@xuegod63 ~]#  tar -jxvf grub.tar.bz2 #解压缩

[root@xuegod63 ~]#  tar jxvf grub.tar.bz2  -C  /opt#解压到opt目录下


例3:创建.tar.xz包

[root@xuegod63 ~]#  tar -Jcvf grub.tar.xz /boot/grub2

[root@xuegod63 ~]#  tar -xvf  grub.tar.xz #解压tar.xz 这类包

或:

[root@xuegod63 ~]#  tar -Jxvf ~/etc.tar.xz  

对比三种压缩方式后压缩比例:

[root@xuegod63 ~]# ll -h grub*

-rw-r--r-- 1 root root 5.2M 10月 26 16:27 grub.tar

-rw-r--r-- 1 root root 1.9M 10月 26 18:51 grub.tar.bz2

-rw-r--r-- 1 root root 2.1M 10月 26 18:47 grub.tar.gz

-rw-r--r-- 1 root root 1.4M 10月 26 19:03 grub.tar.xz#这个压缩比例最高,压缩的时间是最长

总结:

用法:tar [OPTION...] [FILE]...

参数:

-ccreate创建文件

-x-extract [?ekstr?kt]  提取 解压还原文件

-v--verbose显示执行详细过程

-f--file指定备份文件

-C (大写)--directory   指定解压位置


tar 归档+压缩

语法:tar czvf newfile.tar.gz SOURCE

语法:tar czvf 压缩后的文件名(tar.gz tar.bz2) 需要压缩的文件或目录

常用参数:

-z, --gzip以gzip方式压缩  扩展名: tar.gz

-j :以bz2方式压缩的  扩展名:tar.bz2

-J:以xz 方式压缩   扩展名:tar.xz


热心网友 时间:2022-02-26 12:55

Linux系统压缩和解压文件都可以用tar命令,需要在压缩文件时指定压缩参数,解压缩时指定解压参数。
tar命令主要参数解释:
-z参数:表示要解压或压缩的是tar.gz文件(如果是tar.bz2就是-j)
-x参数:表示是执行解压缩操作而不是打包操作
-v参数:表示列出解压时的详细消息
-f参数:指定要解压的文件名,或者指定新建的打包文件的名字
tar命令解压时还可以指定解压的目标目录,也就是把压缩文件的内容解压到哪个文件夹内,这个参数是-C(大写的C),例子:
解压tar.gz文件:tar -zxv -f test.tar.gz -C /home/user/target
解压tar.bz2文件: tar -jxv -f test.tar.bz2 -C /home/user/target
如果是zip文件就无法用tar命令解压了,需要用unzip命令,unzip命令常用的参数是指定解压缩的目标目录的-d参数,例子:
unzip test.zip -d /home/user/target
下面说一下压缩文件,Linux上最常用的压缩格式一般是bzip2格式(常用bz2后缀)和gzip格式(常用gz后缀),因为它俩的压缩比比较高而且没有使用授权费用。压缩命令也是用tar命令,只不过是把上面的解压tar命令中的-x参数换成-c参数,-c参数表示新建打包文件,在配合上-j或-z参数就能用指定的格式压缩文件了。不过注意,当压缩文件时,-f参数后面跟的是新建的压缩包的名字,压缩包文件名后面还要跟将要压缩的文件或文件夹(这就不需要-C参数了)。不多说,直接看例子就明白了:
tar -jcv -f newfile.tar.bz2 要压缩的文件或目录
tar -zcv -f newfile.tar.gz 要压缩的文件或目录

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com