自制個人網(wǎng)站網(wǎng)站seo收錄工具
lz4是一個讓"人見人愛、花見花開"的壓縮算法,能夠在多核上很好的擴(kuò)展。lz4在壓縮率上略微遜色, 但是在解壓速度上有著驚人的優(yōu)勢 (大概是gzip的3倍(多次測試對比))。因?yàn)閴嚎s時高效的多核利用,再加上驚艷的解壓,lz4已經(jīng)在非常多重要場合使用了!對于需要頻繁壓縮、實(shí)時快速解壓的場景來說,lz4非常適合;lz4 解壓縮的對象是文件而不是目錄。
1)lz4工具安裝
# yum install -y lz4 lz4-devel
2)lz4解壓縮命令格式
壓縮 (默認(rèn)解壓之后的名稱filename.lz4)
# lz4 filename
解壓縮
# lz4 -d filename.lz4
centos7下默認(rèn)有l(wèi)z4_decompress 命令,可以直接解壓, 并可以定義解壓后的文件名
# lz4_decompress filename.lz4 filename
# lz4_decompress filename.lz4 filename.txt
3)lz4參數(shù)解釋
查看幫助
[root@localhost~]# lz4 --help
參數(shù)
-1:? 快速壓縮(默認(rèn))
-9:? 高壓縮
-d:? 解壓縮(默認(rèn)為.lz4擴(kuò)展名)
-z:? 強(qiáng)制壓縮
-f:? 覆蓋輸出而不提示
-k:? 保留源文件(默認(rèn))
--rm:? 成功地解除/壓縮后刪除源文件
-h/-h:? 顯示幫助/長幫助和退出
高級參數(shù)
-v:? 顯示版本號并退出
-v:? 詳細(xì)模式
-q:? 取消警告;指定兩次也可以取消錯誤
-c:? 強(qiáng)制寫入標(biāo)準(zhǔn)輸出,即使它是控制臺
-t:? 測試壓縮文件完整性
-m:? 多個輸入文件(表示自動輸出文件名)
-r:? 在目錄上遞歸操作(也設(shè)置為-m)
-l:? 使用舊格式壓縮(Linux內(nèi)核壓縮)
4)lz4解壓縮示例
[root@MGR-node3 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@MGR-node3 ~]# cd /opt/
[root@localhost opt]# ls
test
[root@localhost opt]# cat test
haha,hello world!!
1) 對test文件進(jìn)行壓縮
[root@localhost opt]# lz4 test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
快速壓縮(-1參數(shù)),默認(rèn)的就是快速壓縮,如上面那條命令
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# lz4 -1 test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
高壓縮(-9參數(shù))
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# lz4 -9 test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
當(dāng)出現(xiàn)同名壓縮文件時,直接壓縮默認(rèn)會有是否覆蓋的提示信息
[root@localhost opt]# lz4 -9 test
Compressed filename will be : test.lz4
test.lz4 already exists; do you wish to overwrite (y/N) ? y
Compressed 8 bytes into 27 bytes ==> 337.50%
已存在同名壓縮文件時,直接壓縮而不輸出是否覆蓋的提示信息
[root@localhost opt]# lz4 -9 -f test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
壓縮文件時,保留源文件 (-f 參數(shù)),默認(rèn)壓縮后就是保留源文件,所以-f參數(shù)加不加都可以
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# lz4 test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# lz4 -f test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test test.lz4
壓縮成功后,將源文件刪除 (--rm參數(shù))
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# ls
test
[root@localhost opt]# lz4 --rm test
Compressed filename will be : test.lz4
Compressed 8 bytes into 27 bytes ==> 337.50%
[root@localhost opt]# ls
test.lz4
2)對壓縮文件進(jìn)行解壓縮
默認(rèn)通過-d參數(shù)進(jìn)行解壓縮
[root@localhost opt]# ls
test.lz4
[root@localhost opt]# lz4 -d test.lz4
Decoding file test
test.lz4 : decoded 8 bytes
[root@localhost opt]# ls
test test.lz4
[root@localhost opt]# cat test
haha,hello world!!
也可以使用lz4_decompress命令進(jìn)行解壓縮,并且可以自定義解壓縮之后的文件名
[root@localhost opt]# rm -f test
[root@localhost opt]# ls
test.lz4
[root@localhost opt]# lz4_decompress test.lz4 kevin #將test.lz4解壓縮,解壓縮之后為kevin文件
[root@localhost opt]# ls
kevin test.lz4
[root@localhost opt]# cat kevin
haha,hello world!!
3) 壓縮時,取消告警提示信息 (-q參數(shù))
[root@localhost opt]# rm -f test.lz4
[root@localhost opt]# ls
kevin
[root@localhost opt]# lz4 -q kevin
[root@localhost opt]# ls
kevin kevin.lz4
[root@localhost opt]# lz4 -q -f kevin
[root@localhost opt]# lz4 -q -f --rm kevin
[root@localhost opt]# ls
kevin.lz4
4)對多個文件進(jìn)行匹配壓縮
[root@localhost opt]# ls
bobo kevin
[root@localhost opt]# lz4 -m bobo kevin
[root@localhost opt]# ls
bobo bobo.lz4 kevin kevin.lz4
[root@localhost opt]# rm -rf bobo kevin
[root@localhost opt]# ls
bobo.lz4 kevin.lz4
[root@localhost opt]# lz4 -d bobo.lz4 -q
[root@localhost opt]# lz4 -d kevin.lz4 -q
[root@localhost opt]# ls
bobo bobo.lz4 kevin kevin.lz4