在工作中,涉及到文件傳輸,為了減少文件的體積和傳輸?shù)臅r間,經常會對文件進行壓縮,本文介紹了linux系統(tǒng)中常用的壓縮和解壓縮命令
一、tar命令
.tar
:簡單封裝,被稱為歸檔文件,只是簡單的將文件組裝到一個.tar的文件內,并沒有太多文件體積的減少,僅僅是簡單的封裝.gz
:壓縮體積,常見為.tar.gz
,gzip
格式壓縮文件是使用gzip壓縮算法將文件壓縮到一個文件內,可以極大的減少壓縮后的體積
一般使用tar
命令進行壓縮文件,會結合以上兩者
語法:tar [-c -v -x -f -z -C] 參數(shù)1 參數(shù)2 ... 參數(shù)N
-
-c
:創(chuàng)建的意思,表示創(chuàng)建壓縮文件,用于壓縮模式 -
-v
:表示顯示壓縮、解壓的過程,用于查看進度 -
-x
:解壓模式 -
-f
:表示要創(chuàng)建壓縮的文件或要解壓的文件,并且-f
選項必須在所有選項中位置處于最后一個 -
-z
:gzip
模式,使用該選項會極大減少壓縮文件的體積,不使用-z
就是普通的歸檔文件的作用,不會減少體積 -
-C
:選擇解壓的目的地,用于解壓的模式
1. 壓縮
# 將a.txt b.txt c.txt 壓縮到test.tar文件內,只是簡單封裝,沒有減少體積
tar -cvf test.tar a.txt b.txt c.txt
壓縮前三個文件的大小總共為11.6K,進行普通組裝之后為20K,反而增加了。
# 將a.txt b.txt c.txt 壓縮到test.tar.gz文件內,使用gzip模式進行壓縮,會極大的減少test.tar的體積
tar -zcvf test.tar.gz a.txt b.txt c.txt
壓縮前三個文件的大小總共為11.6K,進行gzip
模式壓縮之后之后為1.8K,對比簡單封裝,極大減少的壓縮文件的體積。
在使用tar
命令進行壓縮的時候,-z
選項如果使用,一般處于選項位的第一個;-f
選項必須在選項的最后一個。
2. 解壓
使用tar
命令進行解壓,和壓縮是對應的,除此之外還可以使用-C
指定解壓路徑
# 解壓test.tar, 將文件解壓到當前目錄
tar -xvf test.tar
# 解壓test.tar, 將文件解壓到指定目錄下
tar -xvf test.tar -C /home
# 以gzip模式解壓test.tar.gz, 將文件解壓到指定目錄下
tar -zxvf test.tar.gz -C /home
在使用tar
命令進行解壓的時候,-z
選項如果使用,一般處于選項位的第一個;-f
選項必須在選項的最后一個;-C
選項單獨使用。
二、zip命令
zip
命令進行壓縮和解壓縮,比較簡單,壓縮文件為zip壓縮包
1. 壓縮
語法:zip [-r] 參數(shù)1 參數(shù)2 ... 參數(shù)N
-
-r
:被壓縮的內容包含文件夾的時候,需要使用-r
選項
# 將a.txt b.txt c.txt 壓縮到test.zip文件內
zip test.zip a.txt b.txt c.txt
# 將test1文件夾、test2文件夾、a.txt壓縮到test.zip文件內
zip -r test.zip test1 test2 a.txt
2. 解壓
語法:unzip [-d] 參數(shù)
-
-d
:表示指定要解壓去的位置,和tar命令的-C
選項作用一樣 -
參數(shù)
:表示被解壓的zip壓縮包文件
# 將test.zip解壓到當前目錄
unzip test.zip
# 將test.zip解壓到指定的文件夾內
unzip test.zip -d /home
三、文件加密壓縮和密碼解壓
1. tar命令
使用tar命令進行加密壓縮時需要和OpenSSL進行結合
1.1 加密壓縮
語法:tar -zcvf - a.txt b.txt | openssl des3 -salt -k 123456 -out /root/test/test.tar.gz
-
-
:該參數(shù)后跟的是被壓縮的具體文件,*
表示當前路徑下所有文件 -
-k
: 該參數(shù)后跟密碼,本示例密碼是123456
-
-out
:該參數(shù)后為輸出的壓縮文件
使用gzip
模式壓縮當前路徑下的a.txt b.txt
文件到當前目錄/root/test
下,壓縮文件名稱為test.tar.gz
, 壓縮密碼為123456
1.2 密碼解壓
語法:openssl des3 -d -k 123456 -salt -in /root/test/test.tar.gz | tar zxvf - -C /root/test1
-
-k
:該參數(shù)后跟的是密碼,示例中密碼為123456
-
-in
:該參數(shù)后跟的是壓縮文件,示例中是/root/test/test.tar.gz
-
-
:表示釋放所有的文件 -
-C
:表示解壓的路徑
使用tar
命令解壓加密文件/root/test/test.tar.gz
到/root/test1
目錄下,解壓密碼為123456
2. zip命令
2.1 加密壓縮
語法:zip -rP 123456 /root/test/test.zip a.txt b.txt*
-
-rp
:文件夾加密,示例中密碼為123456
使用zip命令壓縮當前路徑下的a.txt b.txt
文件到當前目錄/root/test
下,壓縮文件名稱為test.zip
, 壓縮密碼為123456
2.2 密碼解壓
語法:unzip -uP 123456 /root/test/test.zip -d /root/test1
文章來源:http://www.zghlxwxcb.cn/news/detail-736165.html
-
-uP
:加壓密碼參數(shù),示例密碼為123456
使用unzip命令解壓加密文件/root/test/test.zip
到/root/test1
目錄下,解壓密碼為123456
文章來源地址http://www.zghlxwxcb.cn/news/detail-736165.html
到了這里,關于linux 中常用的壓縮和解壓縮命令詳解(tar zip)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!