Linux檔案歸檔和壓縮

2021-06-18 19:24:17 字數 3057 閱讀 5588

歸檔檔案是乙個檔案和目錄的集合,而這個集合被貯存在乙個檔案中。歸檔檔案沒有經過壓縮----它占用的空間是其中所有檔案和目錄的總和。壓縮檔案也是乙個檔案和目錄的集合,且這個集合也被貯存在乙個檔案中,但是,它的貯存方式使其所占用的磁碟空間比其中所有檔案和目錄的總和要少。

歸檔檔案不是壓縮檔案,但是壓縮檔案可以是歸檔檔案。

1. 使用檔案打包器

主選單》附件》檔案打包器

shell: file-roller

或雙擊想要解除歸檔或解壓的檔案。

2. 在shell下壓縮檔案

在redhat linux中,可以使用的壓縮工具有:gzip、bzip2和zip,對應的解壓工具:gunzip、bunzip2、unzip。

2.1 bzip2和bunzip2

bzip2 filename  檔案被壓縮並儲存為 filename.bz2。

bunzip2 filename.bz2  filename.bz2被刪除,繼之以filename。

bizp2 filename.bz2 file1 file2 file3 /usr/work/school  把file1、file2、file3和/usr/work/school目錄的內容壓縮起來,放入filename.bz2中。

2.2 gzip和gunzip

gzip filename 檔案被壓縮為filename.gz。

gunzip filenam.gz filename.gz被刪除,繼之以filename、

壓縮多個檔案和目錄

gzip -r filename.gz file1 file2 file3 /usr/work/school 

上面的命令把 file1、file2、 file3、以及 /usr/work/school 目錄的內容(假設這個目錄存在)壓縮起來,然後放入 filename.gz 檔案中。

2.3. zip 和 unzip

要使用 zip 來壓縮檔案,在 shell 提示下鍵入下面的命令:

zip -r filename.zip filesdir

在這個例子裡,filename.zip 代表你建立的檔案,filesdir 代表你想放置新 zip 檔案的目錄。-r 選項指定你想遞迴地(recursively)包括所有包括在 filesdir 目錄中的檔案。

要抽取 zip 檔案的內容,鍵入以下命令:

unzip filename.zip

你可以使用 zip 命令同時處理多個檔案和目錄,方法是將它們逐一列出,並用空格間隔:

zip -r filename.zip file1 file2 file3 /usr/work/school 

上面的命令把 file1、file2、 file3、以及 /usr/work/school 目錄的內容(假設這個目錄存在)壓縮起來,然後放入 filename.zip 檔案中。

3. 在 shell 提示下給檔案歸檔

tar 檔案是幾個檔案和(或)目錄在乙個檔案中的集合。這是建立備份和歸檔的佳徑。

tar 使用的選項有:

-c — 建立乙個新歸檔。

-f — 當與 -c 選項一起使用時,建立的 tar 檔案使用該選項指定的檔名;當與 -x 選項一起使用時,則解除該選項指定的歸檔。

-t — 顯示包括在 tar 檔案中的檔案列表。

-v — 顯示檔案的歸檔進度。

-x — 從歸檔中抽取檔案。

-z — 使用 gzip 來壓縮 tar 檔案。

-j — 使用 bzip2 來壓縮 tar 檔案。

要建立乙個tar檔案,鍵入:

tar -cvf filename.tar directory/file

在以上的例子中,filename.tar 代表你建立的檔案,directory/file 代表你想放入歸檔檔案內的檔案和目錄。

你可以使用 tar 命令同時處理多個檔案和目錄,方法是將它們逐一列出,並用空格間隔:

tar -cvf filename.tar /home/mine/work /home/mine/school

上面的命令把 /home/mine 目錄下的 work 和 school 子目錄內的所有檔案都放入當前目錄中乙個叫做 filename.tar 的新檔案裡。

要列出 tar 檔案的內容,鍵入:

tar -tvf filename.tar

要抽取 tar 檔案的內容,鍵入:

tar -xvf filename.tar

這個命令不會刪除 tar 檔案,但是它會把被解除歸檔的內容複製到當前的工作目錄下,並保留歸檔檔案所使用的任何目錄結構。譬如,如果這個 tar 檔案中包含乙個叫做 bar.txt 的檔案,而這個檔案包含在 foo/ 目錄中,那麼,抽取歸檔檔案將會導致在你當前的工作目錄中建立 foo/ 目錄,該目錄中包含 bar.txt 檔案。

請記住,tar 預設不壓縮檔案。要建立乙個使用tar和bzip來歸檔壓縮的檔案,使用 -j 選項:

tar -cjvf filename.tbz file

按照約定俗成,用 bzip2 壓縮的 tar 檔案具有 .tbz 副檔名。不過,有時使用者使用 tar.bz2 副檔名來歸檔他們的檔案。

以上命令建立了乙個歸檔檔案,然後將其壓縮為 filename.tbz 檔案。如果你使用 bunzip2 命令為 filename.tbz 檔案解壓,filename.tbz 檔案會被刪除,繼之以 filename.tar 檔案。

你還可以用乙個命令來擴充套件並解除歸檔 bzip tar 檔案:

tar -xjvf filename.tbz

要建立乙個用 tar 和 gzip 歸檔並壓縮的檔案,使用 -z 選項:

tar -czvf filename.tgz file

按照約定俗成,使用 gzip 來壓縮的 tar 檔案具有 .tgz 副檔名。不過,有時使用者使用 tar.gz 副檔名來歸檔他們的檔案。

這個命令建立歸檔檔案 filename.tar,然後把它壓縮為 filename.tgz 檔案(檔案 filename.tar 不被保留)。如果你使用 gunzip 命令來給 filename.tgz 檔案解壓,filename.tgz 檔案會被刪除,並被替換為 filename.tar。

你可以用單個命令來擴充套件 gzip tar 檔案:

tar -xzvf filename.tgz

Linux檔案壓縮和歸檔

壓縮 運用某種演算法,將檔案壓在一塊減少空間 歸檔 將很多檔案放在一起 解壓縮 將壓在一塊的內容,解壓縮開來 壓縮 解壓縮命令 壓縮格式 gz,bz2,xz,zip,z 壓縮演算法 演算法不同,壓縮比也不會不同 gzip gz 壓縮後會刪除原始檔,只能壓縮單個檔案 gzip路徑檔案 d 解壓縮 gu...

linux檔案壓縮歸檔

gz gzip gunzip gzip d tar tar cf xf tar.gz tar zcf zxf zip zip r unzip bz2 bzip2 bunzip2 tar.bz2 tar cjf xjf 1 tar cf bak.tar log 將當前目錄下的所有log檔案打成乙個叫做...

linux 檔案壓縮和歸檔命令

一 製作歸檔檔案或釋放已歸檔檔案 tar命令。tar命令可以將要備份儲存的資料打包成乙個擴充套件名為.tar的檔案,以便於儲存,需要時再從.tar中恢復。引數 t 檢視包中的檔案列表 x 釋放包 c 建立包 r 增加檔案到包文件的末尾 z 代表.gz格式的壓縮包,採用gzip方式壓縮或解壓縮 j 代...