跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

元旦快樂~

Hi~小夥伴們,好久不見啦~轉眼已經是2018年的最後一天啦,趁著短短的假期,小樂子趕緊再來給大家更新一些內容吧~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

今天要和大家一起來分享的內容非常簡單,就是如何在Linux系統中壓縮和解壓文件。

相信大家日常在Windows系統中經常會使用各種軟件來進行文件壓縮和解壓。在小樂子剛剛接觸電腦的那個時候,最為常用的軟件是“WinZip”和“WinRAR”兩款。這些年,小樂子發現周圍的小朋友們開始更多地使用一些國產的壓縮工具軟件。

在Linux系統中,其實也是有類系的工具包可以使用的。小樂子先來簡單羅列一下常用的工具包吧~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

  • zip

這是Windows上的壓縮工具在Unix系統中的另一個實現版本。和在 Windows系統中一樣,被壓縮後的文件,後綴名是“.zip”

  • bzip2

這是採用了Burrows-Wheeler塊排序文本壓縮算法和霍夫曼編碼的壓縮工具。壓縮文件的後綴名是“bz2”

  • compress

這是版本相當早的Unix系統下的壓縮工具,壓縮文件的後綴名是“.Z”。

  • gzip

這是Linux系統中最為常見的壓縮工具,是GNU項目的產物,壓縮文件的後綴名是“.gz”

作為一個分享Linux相關小知識的頭條號,小樂子今天主要要和大家分享的當然是“gzip”工具啦~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

字數不夠,圖片來湊

gzip

我們先來看一下系統手冊對於gzip命令的描述吧:

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

Ummm......好吧,不知道為什麼這個簡單的小命令居然有那麼大段的解釋。簡直可以當成是閱讀理解來看了~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

其實,“gzip”的用法並沒有多麼複雜。首先要和大家介紹的是,這個工具包其實包含了三個常用的命令:

  • gzip
  • gzcat
  • gunzip

下面我們一個一個來看吧~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

命令:gzip

作用:壓縮文件

用法:gzip filename

我們來看這個小例子。在下面的截圖當中,有三個文件,以及一個文件夾,而文件夾內又有幾個文件:

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

我們先試著將單個文件“myFile1”進行壓縮:

gzip myFile1
跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

很容易看到,gzip為我們在當前目錄下創建了一個壓縮文件“myFile1.gz”。這就是“gzip”最簡單的用法啦~

額外需要注意的是,在完成壓縮之後,“gzip”沒有幫我們保留原始文件。這個時候,如果我們想要查看這個文件的內容,就可以使用“gzcat”命令啦:

命令:gzcat

作用:查看壓縮過的文本文件的內容

用法:gzcat fileName

gzcat myFile1.gz

這裡有一點值得注意,在小樂子所使用的Linux版本中,“gzcat”命令已經被“zcat”命令所取代,所以小樂子是這樣使用的:

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

最後,當我們需要解壓縮的時候,就需要使用到gunzip命令啦:

命令:gunzip

作用:解壓縮文件

用法:gunzip fileName

這條命令的使用就更加簡單啦:

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

如果我們需要同時壓縮多個文件,怎麼辦呢?我們可以使用通配符:

gzip *
跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

到這裡,就出現了問題啦~

大家看到,在上面的截圖中,當我們使用了通配符“*”之後,發現文件夾“myFolder1”沒有被壓縮,命令行提示我們:

gzip:myFolder1 is a directory -- ignored

意思就是說,gzip並不能幫助我們壓縮文件夾。

另一個問題是,剩餘的每一個文件,都被gzip單獨壓縮成為“.gz”文件了。這好像和大家的預期不太一樣,用慣了Windows壓縮的小夥伴們,應該會覺得將所有文件壓縮成一個壓縮包才對吧~

這個時候,我們就需要用到符號“>”啦:

gzip my* > my.gz

上面這條命令同時使用了通配符“*”和單箭頭“>”,意思是說:

把所有以“my”開頭的文件壓縮到一個名為“my.gz”的壓縮文件中

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

最後得到的效果 就是上面的截圖那樣啦~

Ummm...彷彿文件夾不能被壓縮的問題仍然存在呢~~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據

關於這個問題,就當作是賣個關子,等小樂子下次和大家分享吧~~

跟著小樂子進階學習Linux系列19:如何壓縮和解壓數據


分享到:


相關文章: