Linux下zip格式文件的解壓縮和壓縮
Linux下的軟件包很多都是壓縮包,軟件的安裝就是解壓縮對應的壓縮包。所以,就需要熟練使用常用的壓縮命令和解壓縮命令。最常用的壓縮格式有.tar.gz/tgz, .tar.bz,.zip文件等。
.tar.gz/.tgz,.tar.bz這兩種格式都可以用tar命令生成、解壓。
但是zip格式的文件的壓縮和解壓縮分別需要不同的命令,壓縮用zip命令,解壓縮用unzip命令,而且這兩個命令在某些linux系統中還沒有附帶,得自己安裝。
1、zip、unzip在centos下的安裝
=========================
$yum install -y unzip zip
2、zip壓縮
============
一個zip壓縮文件其中包括的無非兩類文件:目錄和文件,所以最一般的使用方法是學會壓縮目錄和壓縮文件。
(1)把/home/zzl目錄下面的mydata目錄壓縮為mydata.zip
$zip -r mydata.zip mydata
(2)把/home/zzl目錄下面的abc文件夾和123.txt壓縮成為abc123.zip
$zip -r abc123.zip abc 123.txt
3、unzip解壓縮
===============
解壓縮zip文件其實原理很簡單,只要解壓到某一個目錄,或者當前目錄即可。unzip命令可以直接解壓,如果直接解壓會把壓縮包所有的內容解壓到當前目錄下,如果在解壓的時候要指定解壓到某一個目錄,則可以使用-d dstDir選項指定目標目錄。
(1)解壓mydata.zip到當前目錄
$unzip mydata.zip
(2)解壓mydata.zip到dstDir目錄
$unzip mydata.zip -d dstDir
4、驗證壓縮包是否完整
=====================
zip文件完整性驗證的原理:
在壓縮的時候就在,zip命令會在zip文件中存儲對所有被壓縮文件計算的crc值,所以,當我們要驗證某一個zip文件是否完整的時候,只要重新計算一下zip中所有文件的crc值,然后和存在zip文件中的crc值對比一下,就可以知道這個zip文件是否完整了。
計算也不需要自己手動做,unzip命令提供了一個選項-t,使用它可以對zip文件的完整性進行驗證。
$unzip -t mydata.zip
Archive: mydata.zip
testing: abc.txt OK
testing: dir1/ OK
testing: dir1/abc2.txt OK
No errors detected in compressed data of mydata.zip.
當看到上面的紅色字的時候,表明mydata.zip沒有問題。
以上的幾個命令是使用zip的最小命令組,熟練使用之后,可以確保壓縮、解壓縮一切文件。
參考資料:
1、https://blog.csdn.net/wxyjuly/article/details/79398559
2、https://www.jb51.net/LINUXjishu/105916.html