Linux 下最為人熟知的歸檔/壓縮工具

5 贊 回覆發表於2015-03-27
作者: B N Poornima 譯者: LCTT FSSlc

| 2015-03-27 09:27   評論: 8 收藏: 14 分享: 7    

很多時候,透過網際網路傳送或接收大檔案和圖片是一件令人頭疼的事。壓縮及解壓縮工具正好可以應對這個問題。下面讓我們快速瀏覽一些可以使得我們的工作更加輕鬆的開源工具。

Tar

Tar 由 'Tape archiver(磁帶歸檔器)' 衍生而來,最初被用來在磁帶上歸檔和儲存檔案。Tar 是一個 GNU 軟體,它可以壓縮一組檔案(歸檔),或提取它們以及對已有的歸檔檔案進行相關操作。在儲存、備份以及傳輸檔案方面,它是很有用的。在建立歸檔檔案時,Tar 可以保持原有檔案和目錄結構不變。透過 Tar 歸檔的檔案的字尾名為 ‘.tar’。

基本用法如下:

a) 建立歸檔 (c / --create)

tar --create --verbose --file=archive.tar file1 file2 file3

tar cvf archive.tar file1 file2 file3

tar cvf

建立一個歸檔

b) 列出歸檔檔案內容 ( t / --list)

tar --list archive.tar

tar tvf

列出歸檔中包含的檔案

c) 提取歸檔 (x / --extract)

tar xvf archive.tar

tar xvf archive.tar --wildcards '*.c'  
- 從歸檔中提取字尾名為 *.c 的檔案。

tar xvf

提取檔案

tar xvf --wildcards

只提取需要的檔案

d) 對歸檔檔案進行更新 ( u / --update)

tar uvf archive.tar newfile.c   
- 假如歸檔的newfile.c 要比先前已經歸檔的新,則新增更新的 newfile.c 到歸檔裡面.

tar uvf

更新一個歸檔

e) 從歸檔中刪除檔案 (--delete)

tar --delete -f archive.tar file1.c   
- 從壓縮包'archive.tar' 中刪除檔案'file1.c' 

tar --delete

刪除檔案

更加具體的使用方法請參考tar 主頁

Gzip / Gunzip

Gzip 即 GNU zip,它是一個被廣泛用於 Linux 作業系統中的壓縮應用,被其壓縮的檔案的字尾名為'*.gz' 。

基本用法如下:

a) 壓縮檔案

gzip file(s)

每個檔案將被單獨壓縮

gzip

壓縮檔案

通常在壓縮完成後,它會將原來的檔案刪除。我們可以使用 -c 選項來保留原來的檔案。

gzip -c file > file.gz

gzip-c

壓縮後保留原有檔案

我們也可以將一組檔案壓縮到一個單獨的檔案中

cat file1 file2 file3 | gzip > archieve.gz

gz group

壓縮一組檔案

b) 檢查壓縮比

被壓縮檔案的壓縮比可以使用 ‘-l’ 選項來進行檢驗。

gzip -l archieve.gz

gzip -l

檢查壓縮率

c) 解壓檔案

Gunzip 用來解壓檔案,在這裡,原有的(壓縮)檔案在被解壓後同樣會被刪除。使用 -c選項來保留原始檔案。

gunzip -c archieve.gz

gunzip -c

解壓檔案

gzip 加上'-d'選項 和 gunzip 對壓縮檔案有同樣的效果。

更多細節可以從 gzip 主頁 得到。

Bzip2 / Bunzip2

同 gzip 一樣,Bzip2 也是一個壓縮工具,與其他傳統的工具相比,它可以將檔案壓縮到更小,但其缺點為:執行速度比 gzip 慢。

基本用法如下:

a) 壓縮檔案

一般情況下,針對壓縮而言,Bzip2 不用什麼選項,將被壓縮的檔案被傳遞為它的引數。每個檔案被單獨壓縮,且壓縮檔案以 'bz2' 為字尾名。

bzip2 file1 file2 file3

bzip2

檔案壓縮

使用 '-k' 選項可以使得在壓縮或解壓縮之後保留原有的檔案。

bzip2 -k

在壓縮後保留原有檔案

b) 解壓

'-d' 選項被用來解壓縮。

bzip2 -d

使用 -d 選項解壓縮檔案

也可以使用 bunzip2 來解壓縮。

bunzip2 filename

bunzip2

解壓檔案

bunzip2 可以解壓字尾名為 bz2, bz, tbz2 和 tbz 的檔案。帶有 tbz2 和 tbz 的檔案在壓縮後,字尾名將變為'.tar' 。

bzip2 -dc   
-   執行解壓檔案到標準輸出的功能。

7-zip

7-zip 是另一個開源壓縮軟體。它使用 7z 這種新的壓縮格式,並支援高壓縮比。因此,它被認為是比先前提及的壓縮工具更好的軟體。在 Linux 下,可以透過 p7zip 軟體包得到,該軟體包裡包含 3 個二進位制檔案: 7z, 7za 和 7zr,讀者可以參考 p7zip wiki 來了解這三個二進位制檔案之間的不同。在本篇中,我們將使用 7zr 來解釋 7-zip 的用法。歸檔檔案以 '.7z' 為字尾名。

基本用法如下:

a) 建立歸檔

7zr a archive-name.7z file-name(s) / directory-name(s)

7zr a

建立一個歸檔檔案

b) 列出歸檔包含檔案

7zr l archive-name.7z

7zr l

列出歸檔中包含的檔案

c) 提取歸檔檔案

7zr e archive-name.7z

7zr e

提取歸檔

d) 更新歸檔檔案

7zr u archive-name.7z new-file

7zr u

更新一個歸檔檔案

e) 從歸檔檔案中刪除檔案

7zr d archive-name.7z file-to-be-deleted

7zr d

刪除檔案

7zr l

確認檔案刪除


via: http://linoxide.com/tools/linux-compress-decompress-tools/

作者:B N Poornima 譯者:FSSlc 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出

Linux 下最為人熟知的歸檔/壓縮工具

相關文章