歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> gzip,bzip2,tar,zip命令使用方法詳解

gzip,bzip2,tar,zip命令使用方法詳解

日期:2017/3/1 14:14:51   编辑:關於Linux
gzip,bzip2,tar,zip命令使用方法詳解 1. gzip gzip是GNU的壓縮程序。它只對單個文件進行壓縮。基本用法如下: $ gzip filename 程序執行以後,文件名會變成filename.gz,而且一般情況下大小會比原文件要小。注意,程序並不新建一個新的文件filename.gz, 而是將filename變成filename.gz。這個基本用法考慮了壓縮時間和壓縮後文件尺寸的平衡問題(注:如果要使壓縮後的文件更小,就需要用到更多的時間)。要得到最小文件大小(最大壓縮),可以使用如下用法: $ gzip -9 filename 這樣就可以得到gzip能夠壓縮的最小文件尺寸,但是需要更長的壓縮時間。上面的數字越小,壓縮就越快,相反壓縮率也就越小。 將gzip壓縮的文件解壓縮,有兩個命令可以使用,但實際上它們是同一個程序。gzip程序可以識別的壓縮文件的後綴名包括:.gz, -gz, .z, -z, .Z 和 -Z。 可以使用的命令是: $ gunzip filename.gz 或 $ gzip -d filename.gz 使用上面的命令後,filename.gz會被解壓縮並去掉後綴名.gz變成filename。 2. bzip2 bzip2是 Slackware Linux裡面壓縮程序的另一個選擇。它的壓縮算法不同於gzip。與gzip相比,bzip2的主要優點在於它壓縮後文件的尺寸,對於相同文件,bzip2 壓縮後的尺寸幾乎總是小於gzip的壓縮結果。有些時候,這個差距會相當大。bzip2的缺點在於,它占用的CPU的使用率和壓縮時間會比gzip更多。 bzip2的使用方法和gzip是一樣的,但bzip2使用後綴名.bz2. $ bzip2 filename $ bunzip2 filename.bz2 $ bzip2 -d filename.bz2 $ bzip2 -9 filename -c :將壓縮的過程產生的資料輸出到屏幕上。 例如:將文件 man.config 用最佳的壓縮比壓縮,並保留原本的文件 [root@linux tmp]# bzip2 -9 -c man.config > man.config.bz2 bzcat 讀取bz文件中的內容,並顯示到屏幕上,bz文件還存在。比如: bzcat filename.bz2 3. tar tar是一個GNU的磁帶歸檔程序。它可以將幾個文件或者目錄打包壓縮成一個文件。這個特點讓我們可以壓縮整個目錄樹,而單使用gzip和 bzip2是無法做到的。 a.tar.gz是先把一些文件用tar打包,然後在用gzip壓縮。 a.tar.bz2是先將一些文件用tar打包,然後再用bzip2壓縮。 tar文件解包: $ tar xzvf filename.tar.gz 或$ tar -xvzf filename.tar.gz $ tar xjvf filename.tar.bz2 或$ tar -xvjf filename.tar.bz2 -x表示提取文件。它告訴tar將打包的文件分離還原成打包前的狀態。 -v即verbose,表示詳細細節。加入這個參數讓程序將解包出來的每一個文件列出來。 -z是告訴tar先運行gunzip將文件解壓縮。 -j是告訴tar先運行bunzip將文件解壓縮。 -f是指定tar處理的文件名 這裡需要注意的是,tar會把解包的文件放到當前目錄。所以如果要把一個放在/tmp目錄文件解壓縮到你的家目錄的話,這裡有一些做法可供選擇: 選擇一,把文件拷貝到家目錄,然後解包 $ cd $HOME $ cp /tmp/filename.tar.gz . $ tar -xvzf filename.tar.gz 選擇二,指定需要解包文件的路徑 $ cd $HOME $ tar -xvzf /tmp/finename.tar.gz 選擇三,用-C 參數指定解包後存放文件的路徑 $ cd / $ tar -xvzf /tmp/filename.tar.gz -C $HOME tar文件打包: $ tar -czvf filename.tar.gz . $ tar -cjvf filename.tar.bz2 ./src/ -c是告訴tar來建立一個打包文件 -z是將打包的文件通過gzip程序進行壓縮。 -j是將打包的文件通過bzip2程序進行壓縮。 -f是指定tar處理的文件名。 filename.tar.gz 是你將要建立的文件名。 命令行最後的"."或"./src/"是指定tar打包的目錄,包括目錄和目錄下所有文件/文件夾。 4. zip zip文件的壓縮程序叫做zip,解壓縮程序叫做unzip。 Linux支持該命令。 $ zip foo * 這行命令會建立一個包涵當前目錄所有文件的的zip文件 foo.zip,zip會自動將.zip後綴名加上。 加上參數-r使zip將當前目錄下的所有文件夾目錄也加在zip文件中: $ zip -r foo * 解壓縮文件: $ unzip foo.zip 這樣會解壓縮foo.zip裡面的所有文件和文件夾。
Copyright © Linux教程網 All Rights Reserved