Linux系統壓縮與解壓

Linux系統下面的文件雖然有擴展名,但是這些擴展名沒有特殊意義。壓縮文件中這些特殊的命名方式可以幫助我們瞭解文件的壓縮和打包方式。
Linux系統常見的壓縮文件擴展名:
*.Z :compress程序壓縮文件
*.zip :zip程序壓縮的文件
*.gz :gzip程序壓縮的文件
*.bz2 :bzip2程序壓縮的文件
*.xz :xz程序壓縮的文件
*.tar.gz :tar程序打包的文件,沒有壓縮。
*.tar.bz2 :tar程序打包的文件,並且經過bzip2程序壓縮
*.tar.xz :tar程序打包的文件,並且經過xz程序壓縮。

一、壓縮命令

Linux系統中最常見的壓縮命令是gzip、bzip2、xz。

1、gzip

其中gzip又是應用最廣的一個命令。目前gzip可以解開compress、zip、gzip等軟件壓縮的文件,gzip壓縮的文件爲*.gz。

命令格式:
gzip [-cdtv#] 文件名
參數說明:
-c:將壓縮的數據輸出到屏幕上,可以通過數據重定向來處理。
-d:解壓縮
-t:可以用來檢驗一個壓縮文件的一致性,看文件有無錯誤
-v:可以顯示出原文件/壓縮文件的壓縮比
-#:#爲數字,代表壓縮等級,-1最快,但是壓縮比最差,-9最慢,但是壓縮比最好,-6是默認值。
在默認狀態下,原本的文件被壓縮成*.gz文件後,源文件就不存在了。
實例:我們發現main.c文件被壓縮後只有一個壓縮文件,原文件已經不在了。
在這裏插入圖片描述
在這裏插入圖片描述
zcat/zmore/zless:可以讀取壓縮文件的內容。
zgrep:查找壓縮文件中的關鍵詞

2、bzip2

bzip2比gzip的壓縮比更好。壓縮的文件爲*.bz2.

命令格式:
bzip2 [-cdkzv#] 文件名
參數說明:
-c/d/v/# 和gzip的參數意義一樣
-k:保留原始文件,而不會刪除原始的文件。
-z:壓縮的參數(默認值,可以不加)
實例:壓縮後原文件還在。
在這裏插入圖片描述
-bzcat/bzmore/bzless:可以讀取壓縮文件的內容
-bzgrep:

3、xz

xz比bzip2的壓縮比更好,壓縮的文件爲*.xz。

命令格式:
xz [-dtlkc#] 文件名
參數說明:
-l:列出壓縮文件的相關信息

-xzcat/xzmore/xzless:可以讀取壓縮文件的內容
-xzgrep

二、打包命令tar + 壓縮
在前面提到的壓縮命令只能針對單一的文件進行壓縮,所以對多文件的文件夾或者目錄要先打包,然後再進行壓縮。
Linux中的打包命令就是tar ,tar可以將多個目錄或文件打包成一個大文件。同時和上述的壓縮命令結合起來,在進行壓縮。tar命令的選項和參數很多,下面列舉幾種舉例,更多的用法可以在終端中通過man tar命令進行查看。

  • tar [-z | -j | -J] [cv] [-f 待建立的新文件名] filename :打包並壓縮文件
  • tar [-z | -j | -J] [tv] [-f 已有的tar文件名] :查看文件名
  • tar [-z | -j | -J] [xv] [-f 已有的tar文件名] :解壓縮
    參數說明:
    -z: 通過gzip程序進行壓縮/解壓,此時的文件名最好爲 *tar.gz
    -j: 通過bzip2程序進行壓縮/解壓,此時的文件名最好爲 *tar.bz2
    -J: 通過xz程序進行壓縮/解壓,此時的文件名最好爲 *tar.xz
    (以上三個參數不能同時出現,也就是說壓縮/解壓只能選用一種方式)
    -c: 建立打包文件,可以搭配-v來查看被打包的文件名(filename)
    -t: 查看打包文件的內容含有哪些文件名,重點在查看文件名
    -x: 解包或解壓,可以搭配-C在特定目錄解壓
    (以上三個參數不能同時出現在一條命令中)
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章