持之以恒

          記錄本
          posts - 4, comments - 32, trackbacks - 0, articles - 74
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          這么多年來,數(shù)據(jù)壓縮對我們來說是非常有用的。無論是在郵件中發(fā)送的圖片用的zip文件還是在服務(wù)器壓縮數(shù)據(jù)文件,我們都可以讓下載更容易或者有效的節(jié)約磁盤空間。某些壓縮格式有時(shí)允許我們以60%的比率(甚至更高)壓縮文件。下面我將會(huì)給大家演示如何用這些命令在Linux下面去壓縮文件或者目錄。我們將學(xué)習(xí)zip, tar, tar.gz和tar.bz2等壓縮格式的基本用法。這幾個(gè)是在Linux里面常用的壓縮格式。

          在我們探究這些用法之前,我想先跟大家分享一下使用不同壓縮格式的經(jīng)驗(yàn)。當(dāng)然,我這里講到的只是其中的一些用法,除我講到的之外,他們還有更多的地方值得我們探討。我已經(jīng)意識到我需要了解兩到三種壓縮格式,才能更好的使用他們。zip格式是第一個(gè)需要了解的格式。因?yàn)樗鼘?shí)際上已成為壓縮文件的標(biāo)準(zhǔn)選擇,而且它在windows上也能使用。我經(jīng)常用zip格式壓縮那些需要共享給windows用戶的文件。如果只是共享給linux用戶或者M(jìn)ac用戶,那我偏向于選擇tar.gz格式。

          ZIP
          zip可能是目前使用得最多的文檔壓縮格式。它最大的優(yōu)點(diǎn)就是在不同的操作系統(tǒng)平臺,比如Linux, Windows以及Mac OS,上使用。缺點(diǎn)就是支持的壓縮率不是很高,而tar.gz和tar.gz2在壓縮率方面做得非常好。閑話少說,我們步入正題吧:
          我們可以使用下列的命令壓縮一個(gè)目錄:

          # zip -r archive_name.zip directory_to_compress

          下面是如果解壓一個(gè)zip文檔:

          # unzip archive_name.zip

          TAR
          Tar是在Linux中使用得非常廣泛的文檔打包格式。它的好處就是它只消耗非常少的CPU以及時(shí)間去打包文件,他僅僅只是一個(gè)打包工具,并不負(fù)責(zé)壓縮。下面是如何打包一個(gè)目錄:

          # tar -cvf archive_name.tar directory_to_compress

          如何解包:

          # tar -xvf archive_name.tar.gz

          上面這個(gè)解包命令將會(huì)將文檔解開在當(dāng)前目錄下面。當(dāng)然,你也可以用這個(gè)命令來捏住解包的路徑:

          # tar -xvf archive_name.tar -C /tmp/extract_here/

          TAR.GZ
          這種格式是我使用得最多的壓縮格式。它在壓縮時(shí)不會(huì)占用太多CPU的,而且可以得到一個(gè)非常理想的壓縮率。使用下面這種格式去壓縮一個(gè)目錄:

          # tar -zcvf archive_name.tar.gz directory_to_compress

          解壓縮:

          # tar -zxvf archive_name.tar.gz

          上面這個(gè)解包命令將會(huì)將文檔解開在當(dāng)前目錄下面。當(dāng)然,你也可以用這個(gè)命令來捏住解包的路徑:

          # tar -zxvf archive_name.tar.gz -C /tmp/extract_here/

          TAR.BZ2
          這種壓縮格式是我們提到的所有方式中壓縮率最好的。當(dāng)然,這也就意味著,它比前面的方式要占用更多的CPU與時(shí)間。這個(gè)就是你如何使用tar.bz2進(jìn)行壓縮。

          # tar -jcvf archive_name.tar.bz2 directory_to_compress

          上面這個(gè)解包命令將會(huì)將文檔解開在當(dāng)前目錄下面。當(dāng)然,你也可以用這個(gè)命令來捏住解包的路徑:

          # tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/

          數(shù)據(jù)壓縮是非常有用的,尤其是對于備份來說。所以,你現(xiàn)在應(yīng)該考慮在你的備份腳本中使用你在這里學(xué)到的壓縮方式備份你基本的規(guī)則文件以減小你備份文件的大小。

          過段時(shí)間之后,你就會(huì)意識到,在壓縮率與CPU占用時(shí)間上會(huì)有一個(gè)平衡,你也要學(xué)會(huì)如何去權(quán)衡什么時(shí)候你需要一個(gè)快但是壓縮率低,什么時(shí)候需要一個(gè)壓縮率高但是CPU點(diǎn)用高的壓縮方式,然后你才能避免無謂的空間與時(shí)間。

          來源:http://www.simplehelp.net/2008/12/15/how-to-create-and-extract-zip-tar-targz-and-tarbz2-files-in-linux/
          譯者注:
          原作者弄錯(cuò)了一個(gè)概念。tar這個(gè)命令并沒有壓縮的功能,它只是一個(gè)打包的命令。tar.gz與tar.bz2都是在tar命令中調(diào)用了別的壓縮命令實(shí)現(xiàn)了一個(gè)壓縮的功能,實(shí)際是實(shí)行一個(gè)先打包后壓縮的過程,而且,tar.gz與tar.bz2只是一個(gè)公認(rèn)的一個(gè)通行后綴而已,并不是一種壓縮格式(真正實(shí)現(xiàn)壓縮的是gzip與bzip2,這是后話。),tar.gz在很多時(shí)候,也會(huì)被簡寫成tgz。
          在譯文中,大部分地方尊重原作者,只是在tar的功能解釋時(shí),我做了修改。
          ------轉(zhuǎn)發(fā)----來至:風(fēng)葉
          目的:學(xué)習(xí)!!!



          小白
          主站蜘蛛池模板: 柘荣县| 阳谷县| 边坝县| 凌海市| 方城县| 磐石市| 璧山县| 五常市| 南乐县| 和田县| 乌拉特中旗| 沅江市| 五华县| 定南县| 乐昌市| 仪陇县| 东平县| 开封县| 云安县| 勃利县| 凉城县| 永和县| 类乌齐县| 北海市| 灵石县| 仁寿县| 平和县| 沁源县| 遵义县| 繁昌县| 从江县| 五寨县| 铁岭县| 泰宁县| 新津县| 会宁县| 嫩江县| 桦甸市| 洪泽县| 海城市| 吴桥县|