.
在文件的整理及傳輸過程中,經常會用到將文件或者文件夾通過打包壓縮的方式整理成爲一個歸檔的文件, Windows中用到的壓縮解壓工具有很多,並且很方便,但是在Linux當中呢,可能會稍微複雜一點,並且方式同樣是多樣化的。
- Linux中主要出現的壓縮格式及方法如下:
文件後綴 | 功能說明 |
---|---|
*.zip | zip程序打包壓縮的文件 |
*.rar | rar程序打包壓縮的文件 |
*.7z | 7zip程序打包壓縮的文件 |
*.tar | tar程序打包,未壓縮的文件 |
*.gz | gip(GNU zip)壓縮的文件 |
*.xz | xz程序壓縮的文件 |
*.bz2 | tar打包,gzip程序壓縮的文件 |
*.tar.gz | tar打包,gzip程序壓縮的文件 |
*.tar.xz | tar打包,xz程序壓縮的文件 |
*.tar.bz2 | tar打包,bzib2程序壓縮的文件 |
*.tar.7z | tar打包,7z程序壓縮的文件 |
1、tar打包
tar -xzvf .tar.gz -C dir 解壓縮
tar -czvf .tar.gz file1 file2 dir 壓縮
- 選項含義說明:
-c: 建立壓縮檔案
-x:解壓(會根據壓縮格式自動進行識別)
-t:查看內容
-r:向壓縮歸檔文件末尾追加文件
-u:更新原壓縮包中的文件
這些選項作爲tar使用過程中根據執行的操作進行選擇,必須要有其一。 - 下面爲壓縮或解壓檔案時可選的。
-z:有gzip屬性的壓縮及解壓
-j:有bz2屬性的壓縮及解壓
-Z:有compress屬性的壓縮及解壓
-v:顯示所有打包及壓縮解壓過程
-O:將文件解開到標準輸出
-f 是執行tar過程中需要攜帶的
-f: 使用檔案名字,該參數作爲最後一個參數,後面只能接檔案名。
(1)創建打包文件
tar cvf test1.tar 1 2
把1 2這兩個文件打包成一個文件test1,.tar是文件後綴。
對於-f參數,後面要先接打包過後文件的名字,後接打包的源文件內容。
(2)壓縮
-z, --gzip ilter the archive through gzip:使用gzip壓縮
可以調用gzip,bzip等壓縮工具,對包進行壓縮。gzip最常用,使用gzip即可,.gz爲後綴。
(3)解包
-x, --extract, --get extract files from an archive:解壓(自動識別各種格式的壓縮)
-C, --directory=DIR change to directory DIR:加壓到指定目錄
tar -xvf test1.tar
-f後面跟所要解壓的包的名字即可
(4)查看
-t, --list list the contents of an archive: 查看存檔的內容列表
tar tvf test1.tar
-t查看包裏的內容,並不解壓。
(5)追加
-r, --append append files to the end of an archive:附加文件
tar -rvf applepen.tar a1 a2
把a1、a2追加到已經打好的包裏
(6)刪除
–delete delete from the archive (not on mag tapes!):刪除包裏的文件
tar --delete -vf applepen.tar a1 a2 a3
刪除包裏面的文件a1、a2、a3,沒有的話會報錯,注意名稱要一樣。
注意
- 儘量不要用絕對路徑,使用相對路徑。
- tar: Removing leading `/’ from member names (移除絕對路徑的/)。
- 如果帶/.解壓後可能覆蓋原有文件。
- 不要在當前目錄打包,在上級目錄打包。
- tar: ./aaa.tar.gz: file is the archive; not dumped。