发布网友
共5个回答
热心网友
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 cvf /root/etc.tar /etc
[root@localhost test]# tar zcvf /root/etc.tar.gz /etc #归档,注意备份的名字后缀
[root@localhost test]# tar zxvf /root/etc.tar.gz #解压缩
[root@localhost test]# tar xvf /root/etc.tar.gz #解压缩
例2:创建.tar.bz2包
语法: #tar jcvf newfile.tar.bz2 SOURCE
[root@xuegod63 ~]# tar -jcvf ~/etc.tar.bz2 /etc
[root@xuegod63 ~]# tar -jxvf ~/etc.tar.bz2 #解压缩
[root@xuegod63 ~]# tar -xvf ~/etc.tar.bz2 #解压缩
[root@xuegod63 ~]# tar jxvf ~/etc.tar.bz2 -C /opt #解压到opt目录下
例3:创建.tar.xz包
[root@xuegod63 ~]# tar -Jcvf ~/etc.tar.xz /etc
[root@xuegod63 ~]# tar -Jxvf ~/etc.tar.xz #tar.xz 这类包,解压缩
[root@xuegod63 ~]# tar -xvf ~/etc.tar.xz
对比三种压缩方式后压缩比例:
[root@xuegod63 ~]# time tar zcf /root/etc.tar.gz /etc
[root@xuegod63 ~]# time tar jcf /root/etc.tar.bz2 /etc
[root@xuegod63 ~]# time tar Jcf /root/etc.tar.xz /etc
[root@xuegod63 ~]# ll -h etc.tar* (*为通配符,代表任意字符任意次)
-rw-r--r-- 1 0 root 28M 5月 10 12:10 etc.tar
-rw-r--r-- 1 0 root 8.7M 5月 10 12:14 etc.tar.bz2 #常用
-rw-r--r-- 1 0 root 9.8M 5月 10 12:11 etc.tar.gz #常用
-rw-r--r-- 1 0 root 7.0M 5月 10 12:16 etc.tar.xz #这个压缩比例最高,压缩的时间是最长
查看源文件大小
[root@xuegod63 ~]# -sh /etc
31M /etc
etc.tar包为28M ,实际几乎没怎么压缩。xz格式化为7.0M,传输的时候效率提高很多。
扩展:
解压指定文件到指定目录
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2/grub.cfg
解压某一类型文件到指定目录
--wildccards 文件名匹配,使用通配符
[root@xuegod62 ~]# tar -tvf boot.tar.gz
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz --wildcards *.mo
排除指定文件并解压
[root@xuegod62 ~]# rm -rf /opt/boot
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2 --exclude=boot/grub2/i386-pc
热心网友
tar [-j|-z] [cv] [-f 建立的档案名] filename...《==打包与压缩
tar [-j|-z] [tv] [-f 建立的档案名] 《==查看档案
tar [-j|-z] [xv] [-f 建立的档案名] [-C 目录] 《==解压缩
选项与参数:
-c:建立打包档案,可搭配-v来观察过程中被打包的档案名(filename)
-t:查看打包档案的内容含有那些档案
-x:解压缩的功能,可以搭配-C在特定的目录解开;-c、-t、-x不能同时出现在一串指令列中。
-j:透过bzip2的支持进行压缩/解压缩:此时档案名最好为*.tar.bz2
-z:透过gzip的支持进行压缩/解压缩:此时档案名最好为*.tar.gz
-v:在压缩/解压缩的过程中,将正在处理文件名显示出来
-f filename:-f后面要立刻接被处理的档案名!建议-f单独写一个选项
-C 目录:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项
热心网友
举个例子来说吧。
如果已经存在用户rehdat, 文件/root/filetext.tar(这种格式只是单纯的打包,当然权限是只有root才能读写)。
[root@redhat ~]# tar -xf filetext.tar -C /home/redhat/
[root@redhat ~]# tar -zxf filetext.tar.gz -C /home/redhat/
(对使用gzip格式压缩的包进行解压缩)
[root@redhat ~]# tar -jxf filetext.tar.bz /home/redhat/
(对使用bzip2格式压缩的包进行解压缩)
如果想要使用普通用户进行解压缩,那就必须赋予权限,实际操作命令还是一样的。
热心网友
你的这个文件是个什么格式的?是单纯的打了个包还是.gz或者bz2格式的文件?如果你也不知道你可以用 file filetext.tar 来查案下这个文件的类型。
如果是.gz的
tar zxf filetext.tar.gz -C /home/普通用户的名字/Desktop
如果是bz2的
tar jxf filetext.tar.bz2 -C /home/普通用户的名字/Desktop
如果只是个tar包没有被压缩
tar xf filetext.tar.bz2 -C /home/普通用户的名字/Desktop
热心网友
解压:
tar -xvf /{文件路径}/filetext.tar -C /{目标路径}
要那个用户能用最好改下权限:
chown {登录用户名}:{登录用户组} /{目标路径}/{解压的文件}
{} 及{} 里面的内容用实际环境中内容代替