在下一篇文章中,我們將看一下pigz。 這是 多線程gzip實現,將使我們 壓縮文件 在很短的時間內。 該工具為我們提供了更多的壓縮選項,因為即使是可用的最快的歸檔/壓縮解決方案之一,例如gzip,也存在一個小問題,那就是它不支持多個處理器/內核。 這意味著,如果我們有一台相對較新的PC,它將無法利用其所有功能。
代表並行gzip實現的Pigz是 功能齊全的gzip替代品,在壓縮數據時會利用多個處理器和多個內核。 Pigz由Mark Adler編寫,並使用庫 ZLIB 和pthread。
Pigz使用線程進行壓縮以利用多個處理器和內核。 每個都分成幾塊 128 KB。 它們中的每一個和每個切片的單獨控制值是並行計算的。 壓縮數據將按順序寫入以進行輸出,並且組合的校驗值是根據各個校驗值計算得出的。
Pigz在Ubuntu上的安裝
至 在Ubuntu,Mint和其他Debian兼容髮行版上安裝Pigz,我們只需打開一個終端(Ctrl + Alt + T)並使用以下命令:
sudo apt install pigz
Pigz的基本用法
壓縮單個文件
至 壓縮任何文件以格式化 GNU郵編 與Pigz,我們只需要按以下方式使用它:
pigz NOMBRE_DEL_ARCHIVO
對於某些人來說,這可能是一個問題 默認情況下,pigz壓縮後刪除原始文件。 如果要保留它,則必須 使用-k開關 如下:
pigz -k NOMBRE_DEL_ARCHIVO
Pigz支持多種壓縮級別,這樣我們就可以在它們之間進行選擇,以連字符號表示它們的編號。 例如:
pigz -9 -k NOMBRE_DEL_ARCHIVO
我們可以使用1到9之間的數字。 設置為'1'時,我們將獲得更快的性能,但壓縮率最低;而設置為'9'時,我們將獲得最慢但最高的壓縮率。
壓縮文件夾
Pigz有一個很大的限制,那就是它不支持文件夾. 我們將只能單獨壓縮文件。 儘管我們可以找到替代解決方案,但可以將其與 焦油.
如果我們要壓縮文件夾“資金”,並且由於tar支持使用外部壓縮程序,因此我們可以執行以下操作:
tar --use-compress-program="pigz -k -9" -cf Fondos.tar.gz Fondos/
在上面的命令中, tar – 使用壓縮程序 確定 儘管它將使用tar創建文件,但其內容的壓縮將通過外部程序完成,在本例中為pigz。 該外部程序及其參數由部件定義 皮茲-k -9 命令。 最後,我們將表明我們要使用'-cf',稱為源碼.tar.gz“文件夾中的所有內容”錢/“。
解壓縮文件和文件夾
使用Pigz解壓縮任何.gz文件 就像輸入以下任何命令一樣簡單:
pigz -d NOMBRE_DEL_ARCHIVO.gz unpigz NOMBRE_DEL_ARCHIVO.gz
在先前創建的帶有擴展名的文件夾的文件中 tar.gz的, 文件夾解壓 使用相同的方法焦油'我們用於壓縮的內容:
tar --use-compress-program="pigz -d" -xvf NOMBRE_CARPETA.tar.gz
限制並行度
Pigz默認情況下使用計算機上的所有處理器/內核。 壓縮大型數據集時,這可能會影響計算機的響應能力。
使用p選項,我們可以將使用限制為特定數量的處理器/內核。 這將使其餘部分自由用於您的其他任務和交互性。 為此,您只需要按如下所示添加處理器/核心數:
pigz -k -p2 NOMBRE_DEL_ARCHIVO
-p2限制Pigz僅使用兩個處理器/內核。 我們可以使用我們想要的任何數字,即使很明顯, 重要的是將這個數字保持在我們硬件的限制之內.
有關更多信息,用戶可以 看一下文件 自述 或閱讀以下頁面 用戶手冊 由Pigz.