tar 壓縮文件 解壓文件 linux centos redhat

tar的用法

如果tar沒有安裝,用yum -y install tar 進行安裝。

壓縮單個文件

1 壓縮成 .tar格式

這裏對999.txt進行壓縮,壓縮文件命名爲 999.txt.tar,名字可以隨便取, 後綴.tar 最好不要改。

[oracle@oracle11g data2]$ ll
total 8
drwxr-xr-x 2 oracle oinstall 4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall   86 Aug 19 17:22 999.txt
[oracle@oracle11g data2]$ 
[oracle@oracle11g data2]$ 
[oracle@oracle11g data2]$ tar -vcf 999.txt.tar 999.txt 
999.txt
[oracle@oracle11g data2]$ ll
total 20
drwxr-xr-x 2 oracle oinstall  4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall    86 Aug 19 17:22 999.txt
-rw-r--r-- 1 oracle oinstall 10240 Sep  3 11:15 999.txt.tar
[oracle@oracle11g data2]$ 

壓縮前999.txt 大小爲86 bytes, 壓縮後 999.txt.tar 大小爲10240 bytes, 壓縮後的文件比較大,浪費存儲空間。上面使用的參數爲-vcf ,其中v 用來動態顯示壓縮過程(解壓的時候也是用來動態顯示),可以省略掉。如果文件較大,建議加上,可以查看命令執行進度。

2 壓縮成 .tar.gz格式

把文件999.txt 壓縮,壓縮文件命名爲999.txt.tar.gz,過程如下:

[oracle@oracle11g data2]$ tar -vzcf 999.txt.tar.gz 999.txt
999.txt
[oracle@oracle11g data2]$ ll
total 24
drwxr-xr-x 2 oracle oinstall  4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall    86 Aug 19 17:22 999.txt
-rw-r--r-- 1 oracle oinstall 10240 Sep  3 11:31 999.txt.tar
-rw-r--r-- 1 oracle oinstall   165 Sep  3 11:31 999.txt.tar.gz
[oracle@oracle11g data2]$ 

壓縮後的文件999.txt.tar.gz 大小爲165bytes, 比999.txt.tar 小多了,節約存儲空間,不錯。

多線程壓縮法

tar cf - paths-to-archive | pigz > archive.tar.gz 
例如:tar cf - paths-to-archive | pigz -9 -p 32 > archive.tar.gz  (-9 是增加壓縮率)
或者
tar -c --use-compress-program=pigz -f tar.file dir_to_zip 

壓縮文件夾

這裏對文件夾0000 壓縮,壓縮後的文件命名爲0000.tar.gz

[oracle@oracle11g data2]$ ll
total 24
drwxr-xr-x 2 oracle oinstall  4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall    86 Aug 19 17:22 999.txt
-rw-r--r-- 1 oracle oinstall 10240 Sep  3 11:31 999.txt.tar
-rw-r--r-- 1 oracle oinstall   165 Sep  3 11:31 999.txt.tar.gz
[oracle@oracle11g data2]$ 
[oracle@oracle11g data2]$ tar -zcf 0000.tar.gz 0000/
[oracle@oracle11g data2]$ ll
total 28
drwxr-xr-x 2 oracle oinstall  4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall   162 Sep  3 11:39 0000.tar.gz
-rw-r--r-- 1 oracle oinstall    86 Aug 19 17:22 999.txt
-rw-r--r-- 1 oracle oinstall 10240 Sep  3 11:31 999.txt.tar
-rw-r--r-- 1 oracle oinstall   165 Sep  3 11:31 999.txt.tar.gz
[oracle@oracle11g data2]$ 

解壓文件

無論是.tar.gz 還是.tar 格式的壓縮文件,都可以使用tar -vxf 進行解壓,參數-v 用來動態展示解壓過程,不需要可以去掉 。

[oracle@oracle11g data2]$ ll
total 8
-rw-r--r-- 1 oracle oinstall 162 Sep  3 11:39 0000.tar.gz
-rw-r--r-- 1 oracle oinstall 165 Sep  3 11:31 999.txt.tar.gz
[oracle@oracle11g data2]$ 
[oracle@oracle11g data2]$ tar -vxf 0000.tar.gz 
0000/
0000/1234
[oracle@oracle11g data2]$ tar -vxf 999.txt.tar.gz 
999.txt
[oracle@oracle11g data2]$ ll
total 16
drwxr-xr-x 2 oracle oinstall 4096 Sep  2 20:08 0000
-rw-r--r-- 1 oracle oinstall  162 Sep  3 11:39 0000.tar.gz
-rw-r--r-- 1 oracle oinstall   86 Aug 19 17:22 999.txt
-rw-r--r-- 1 oracle oinstall  165 Sep  3 11:31 999.txt.tar.gz
[oracle@oracle11g data2]$ 

寫於 Sept.3, 2019

如果覺得文章不錯,不妨給個打賞,寫作不易,各位的支持,能激發和鼓勵我更大的寫作熱情。謝謝!

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章