【linux】解压|压缩|打包命令(tar|zip|rar|bz)
目录
.tar 打包
打包c:tar cvf FileName.tar DirName
解包x:tar xvf FileName.tar
(注:tar是打包,不是压缩!)
tar zcvf fd.tar.gz * --exclude=file1 --exclude=dir1
注意:
1、--exclude=file1 而不是 --exclude file1
2、要排除一个目录是--exclude=dir1而不是--exclude=dir1/
也可以在父目录打包
tar zcvf fd.tar.gz pardir --exclude=pardir/file1 --exclude=pardir/dir1
———————————————
.gz 压缩
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz 打包并gz压缩
压缩(cz打包+压缩):tar czvf FileName.tar.gz DirName
解压(xz解包+解压):tar xzvf FileName.tar.gz
解压到指定文件夹: tar xzvf FileName.tar.gz -C /PATH/
———————————————
.bz2压缩
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2 打包并bz2压缩
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
———————————————
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
———————————————
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
———————————————
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
解压到:# unzip test.zip -d /root/
unzip 压缩文件名.zip 解压.zip后缀的文件
———————————————
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName
———————————————
.xz
xz压缩文件方法或命令
xz -z 要压缩的文件
如果要保留被压缩的文件加上参数 -k ,如果要设置压缩率加入参数 -0 到 -9调节压缩率。如果不设置,默认压缩等级是6.
xz解压文件方法或命令
xz -d 要解压的文件
同样使用 -k 参数来保留被解压缩的文件。
———————————————
tar.xz
———————————————
创建或解压tar.xz文件的方法
习惯了 tar czvf 或 tar xzvf 的人可能碰到 tar.xz也会想用单一命令搞定解压或压缩。其实不行 tar里面没有征对xz格式的参数比如 z是针对 gzip,j是针对 bzip2。
创建tar.xz文件:只要先 tar cvf xxx.tar xxx/ 这样创建xxx.tar文件先,然后使用 xz -z xxx.tar 来将 xxx.tar压缩成为 xxx.tar.xz
解压tar.xz文件:先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后,再用 tar xvf xxx.tar来解包。
tar多线程解压
tar 多线程加速打包速度
tar --use-compress-program=pigz -h -cvpf Homo_sapiens.GRCh38.dna.toplevel.tar.gz *
tar多线程压缩解压
tar -czvf a.tar.gz ./*
测试每分钟压缩包a.tar.gz增长大约300M
安装多线程程序
yum -y install pigz
实测,4核的机器,2G文件用了不到1分钟
tar --use-compress-program=pigz -cvpf b.tar.gz ./*
top看到系统CPU使用率是390%+
解压测试:41G 的文件,4核的机器,内存16G
tar --use-compress-program=pigz -xvpf hs_sale_1126.tar.gz
top命令看到CPU使用率没有压缩的时候那么高,在50% - 80%之间
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18241 root 20 0 38676 724 576 S 84.3 0.0 3:34.92 pigz
遇到单个大文件的时候,CPU使用率会比较高一点
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18241 root 20 0 38676 724 576 R 126.2 0.0 6:47.93 pigz
最后发现只用了40分钟就解压完,之前用了超过2个半小时