壓縮文件使用較少磁盤空間,並且比未壓縮的大文件下載速度要快。在 Red Hat Linux 中,你可以使用的文件壓縮工具有:gzip、bzip2、和 zip。
推薦你使用 bzip2 壓縮工具,因爲它提供了最大限度的壓縮,並且可在多數類似 UNIX 的操作系統上找到。gzip 壓縮工具也可以在類似 UNIX 的操作系?成險業健H綣閾枰? Linux 和其它操作系統如 MS Windows 間傳輸文件,你應該使用 zip,因爲該命令與 Windows 上的壓縮工具最兼容。
按照約定俗成,用 gzip 來壓縮的文件的擴展名是 .gz;用 bzip2 來壓縮的文件的擴展名是 .bz2;用 zip 壓縮的文件的擴展名是 .zip。
用 gzip 壓縮的文件可以使用 gunzip 來解壓;用 bzip2 壓縮的文件可以使用 bunzip2 來解壓;用 zip 壓縮的文件可以使用 unzip 來解壓。
14.3.2.1. bzip2 和 bunzip2
要使用 bzip2 來壓縮文件,在 shell 提示下鍵入以下命令:
bzip2 filename |
文件即會被壓縮並被保存爲 filename.bz2。
要擴展壓縮的文件,鍵入以下命令:
bunzip2 filename.bz2 |
filename.bz2 文件會被刪除,而繼之以 filename。
你可以使用 bzip2 命令同時處理多個文件和目錄,方法是將它們逐一列出,並用空格間隔:
bzip2 filename.bz2 file1 file2 file3 /usr/work/school |
上面的命令把 file1、file2、 file3、以及 /usr/work/school 目錄的內容(假設這個目錄存在)壓縮起來,然後放入 filename.bz2 文件中。
竅門 | |
---|---|
要獲得有關這兩個命令的詳細信息,在 shell 提示下鍵入 man bzip2 和 man bunzip2 來閱讀 bzip2 和 bunzip2 命令的說明書頁。 |
14.3.2.2. gzip 和 gunzip
要使用 gzip 來壓縮文件,在 shell 提示下鍵入以下命令:
gzip filename |
文件即會被壓縮,並被保存爲 filename.gz。
要擴展壓縮的文件,鍵入以下命令:
gunzip filename.gz |
filename.gz 會被刪除,而繼之以 filename。
你可以使用 gzip 命令同時處理多個文件和目錄,方法是將它們逐一列出,並用空格間隔:
gzip -r filename.gz file1 file2 file3 /usr/work/school |
上面的命令把 file1、file2、 file3、以及 /usr/work/school 目錄的內容(假設這個目錄存在)壓縮起來,然後放入 filename.gz 文件中。
竅門 | |
---|---|
要獲得有關這兩個命令的詳細信息,在 shell 提示下鍵入 man gzip 和 man gunzip 來閱讀 gzip 和 gunzip 命令的說明書頁。 |
14.3.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 文件中。
竅門 | |
---|---|
要獲得有關這兩個命令的詳細信息,在 shell 提示下鍵入 man zip 和 man unzip 來閱讀 zip 和 unzip 命令的說明書頁。 |
14.3.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 擴展名。
這個命令創建歸檔文件 filename.tar,然後把它壓縮爲 filename.tgz 文件(文件 filename.tar 不被保留)。如果你使用 gunzip 命令來給 filename.tgz 文件解壓,filename.tgz 文件會被刪除,並被替換爲 filename.tar。
你可以用單個命令來擴展 gzip tar 文件:
tar -xzvf filename.tgz |