xz
POSIX 平臺開發具有高壓縮率的工具
補充說明
xz命令 XZ Utils 是爲 POSIX 平臺開發具有高壓縮率的工具。它使用 LZMA2 壓縮算法,生成的壓縮文件比 POSIX 平臺傳統使用的 gzip、bzip2 生成的壓縮文件更小,而且解壓縮速度也很快。最初 XZ Utils 的是基於 LZMA-SDK 開發,但是 LZMA-SDK 包含了一些 WINDOWS 平臺的特性,所以 XZ Utils 爲以適應 POSIX 平臺作了大幅的修改。XZ Utils 的出現也是爲了取代 POSIX 系統中舊的 LZMA Utils。
語法
1xz(選項)(參數)
2xz [OPTION]... [FILE]...
選項
1-z, --compress # 強制壓縮
2-d, --decompress, --uncompress
3 # force decompression
4-t, --test # 測試壓縮文件的完整性
5-l, --list # 列出有關.xz文件的信息
6-k, --keep # 保留(不要刪除)輸入文件
7-f, --force # 強制覆蓋輸出文件和(解)壓縮鏈接
8-c, --stdout, --to-stdout
9 # 寫入標準輸出,不要刪除輸入文件
10-0 ... -9 # 壓縮預設; 默認爲6; 取壓縮機*和*
11 # 使用7-9之前解壓縮內存使用量考慮在內!
12-e, --extreme # 嘗試通過使用更多的CPU時間來提高壓縮比;
13 # 要求不影響解壓縮存儲器
14-T, --threads=NUM # 最多使用NUM個線程; 默認值爲1; set to 0
15 # 設置爲0,使用與處理器內核一樣多的線程
16-q, --quiet # 抑制警告; 指定兩次以抑制錯誤
17-v, --verbose # 冗長; 指定兩次更詳細
18-h, --help # 顯示這個簡潔的幫助並退出
19-H, --long-help # 顯示更多幫助(還列出了高級選項)
20-V, --version # 顯示版本號並退出
參數
- 源文件:指定連接的源文件。
- 目標文件:指定源文件的目標連接文件。
實例
壓縮一個文件 test.txt,壓縮成功後生成 test.txt.xz, 原文件會被刪除。
1$ xz test.txt
2$ ls test.txt*
3
4test.txt.xz
解壓 test.txt.xz 文件,並使用參數 -k 保持原文件不被刪除
1$ xz -d -k test.txt.xz
2$ ls test.txt*
3
4test.txt.xz test.txt
使用參數 -l 顯示 .xz 文件的基本信息。基本信息包括壓縮率、數據完整性驗證方式等。也可以和參數 -v 或 -vv 配合顯示更詳盡的信息。
1xz -l index.txt.xz
2# Strms Blocks Compressed Uncompressed Ratio Check Filename
3# 1 1 768 B 1,240 B 0.619 CRC64 index.txt.
使用參數 -0, -1, -2, … -6, … -9 或參數 --fast, --best 設定壓縮率。xz 命令的默認爲 -6 ,對於大多數系統來說,甚至是一些較舊的系統,-4 … -6 壓縮率預設值都不錯的表現。
1$ xz -k7 xz_pipe_decomp_mini.c
2$ xz -k --fast xz_pipe_decomp_mini.c
使用參數 -H 顯示 xz 命令所有 options. 參數 -H 比使用參數 --help 顯示的內容更詳細。
1$ xz -H | more
藉助 xargs 命令並行壓縮多文件。下面的命令行可以將 /var/log 目錄下所有的擴展名爲 .log 的文件壓縮。通過 xargs 命令同時運行多個 xz 進行壓縮。
1# 運行此命令須有 root 權限。
2find /var/log -type f -iname "*.log" -print0 | xargs -P4 -n16 xz -T1
來源:https://github.com/jaywcjlove/linux-command
最後修改於: Wednesday, January 31, 2024
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。