壓縮文件命令linux,壓縮文件命令 Linux

說(shuō)說(shuō) Linux 中的壓縮與解壓縮指令(tar)

tar 的功能類(lèi)似于 Windows 中的 WinRAR。它可以將多個(gè)目錄或文件打包成一個(gè)大文件,在打包的過(guò)程中還可以透過(guò) gzip/bzip2/xz 的支持,對(duì)文件進(jìn)行壓縮 1 。

創(chuàng)新互聯(lián)專(zhuān)注于撫寧企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開(kāi)發(fā),商城網(wǎng)站開(kāi)發(fā)。撫寧網(wǎng)站建設(shè)公司,為撫寧等地區(qū)提供建站服務(wù)。全流程按需求定制網(wǎng)站,專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)

tar 的選項(xiàng)參數(shù)很多,主要用到的有以下這些:

還是太多,記不住怎么辦? 記住下面這些最常用的命令即可:

總結(jié)一下:z 為gzip;j 為bzip2;J 為xz。c 為壓縮;t 為查詢;x 為解壓縮。最后跟著 vf。f 一定要是最后一個(gè),如果放在其他選項(xiàng)之前,tar 就會(huì)把文件名搞錯(cuò)。比如 tar -zcfv xxx 命令,tar 指令就會(huì)認(rèn)為壓縮文件名為 v!

壓縮的文件名稱(chēng)要根據(jù)壓縮算法加上響應(yīng)的后綴:

只有知道了壓縮算法,我們才能解的出來(lái),你說(shuō)是嗎?所以文件名規(guī)范很重要。

假設(shè)我們需要備份 /etc 文件夾,把它打成一個(gè)壓縮包 1 。這在實(shí)際應(yīng)用中很常見(jiàn),因?yàn)?/etc 文件夾存放了系統(tǒng)主要配置文件。在英文中完整單詞是etc.,也就是后面會(huì)帶上一個(gè)句點(diǎn),表示“等等”之意。

接下來(lái),我們分別使用 gzip、bzip2與 xz 算法對(duì) /etc 文件夾進(jìn)行打包壓縮。

gzip 壓縮指令: time tar -zpcvf /root/etc.tar.gz /etc

bzip2壓縮指令: time tar -jpcvf /root/etc.tar.bz2 /etc

xz 壓縮指令: time tar -Jpcvf /root/etc.tar.xz /etc

從 real 中可以看出: gzip 的壓縮速度最快,而 xz 的壓縮速度最慢。

從大小上來(lái)看,xz 的壓縮率最高,而gzip 壓縮率最差。

壓縮率高,自然需要時(shí)間成本。因此需要壓縮的文件夾很大,那么就要多多考慮時(shí)間成本咯。因?yàn)?gzip 壓縮速度快,這也是 *.tar.gz 比較流行的原因之一。

假設(shè)有這樣一種場(chǎng)景:我們需要打包某個(gè)文件夾(/root),但這個(gè)文件夾中的某個(gè)文件或者子文件夾不想打包進(jìn)去(帶 etc 前綴)。也就是希望這個(gè)文件夾部分打包,部分不打包??梢詧?zhí)行以下指令:

tar -zcvf /root/test.tar.gz --exclude=/root/etc* --exclude=/root/test.tar.gz /root

加了 --exclude=/root/test.tar.gz 是為了排除自身,否則壓縮包中會(huì)包含一個(gè)大小為 0 的自身文件,這恐怕不是我們希望看到的:

通過(guò) tar -ztvf test.tar.gz 就可以查看剛剛新打的壓縮包中所包含的文件列表:

使用命令 tar -ztvf etc.tar.gz 查看剛剛打好的壓縮包。注意要使用匹配的解壓縮算法才能正確解壓,比如示例中是 gz 作為后綴,所以加了 -z 選項(xiàng)表示使用 gzip 算法進(jìn)行解壓。

部分輸出內(nèi)容:

可以看到該命令把文件的權(quán)限、賬戶以及歸屬組也一并打印出來(lái)了。

而且還有一點(diǎn)很關(guān)鍵,這些文件都沒(méi)有根目錄。如果沒(méi)有拿掉根目錄,解壓縮后的文件名就會(huì)是絕對(duì)路徑, 亦即解壓縮后的數(shù)據(jù)一定會(huì)被放置 到 /etc/xxx 去 1 !這樣系統(tǒng)的 /etc 文件夾就會(huì)被覆蓋,后果很?chē)?yán)重。所以,tar 打包指令默認(rèn)都會(huì)去除放入包中文件的根目錄。除非通過(guò) -P 顯示要求保留這些文件的根目錄。

(1)完全解壓

利用 tar -zxvf etc.tar.gz -C /tmp 命令把 etc.tar.gz 解壓到 /tmp。解壓成功后,就會(huì)在 /tmp 下看到 /etc 文件夾。

如果需要在本地路徑下直接解開(kāi),那直接執(zhí)行 tar -zxvf etc.tar.gz 即可。

(2)部分解壓

假設(shè)我們需要把壓縮包(etc.tar.gz)中的 vconsole.conf 解壓出來(lái)??梢韵葓?zhí)行以下命令,查詢出該文件所對(duì)應(yīng)的相對(duì)路徑:

tar -ztvf etc.tar.gz | grep ‘console’

拿到需要解壓的文件路徑之后,就可以執(zhí)行 tar -zxvf etc.tar.gz etc/vconsole.conf

進(jìn)入當(dāng)前目錄的 etc 文件夾,就可以看到 vconsole.conf 已經(jīng)被解壓出來(lái)了:

【1】 鳥(niǎo)哥. 鳥(niǎo)哥的Linux私房菜 基礎(chǔ)學(xué)習(xí)篇[M]. 第四版. 北京: 人民郵電出版社,2018:359-362.

linux解壓7z文件命令

7z文件類(lèi)型屬于一個(gè)壓縮文件類(lèi)型,在linux要通過(guò)命令可以將其解壓出來(lái),下面由我為大家整理了linux下解壓7z文件命令的相關(guān)知識(shí),希望對(duì)大家有所幫助。

一、linux解壓7z文件命令詳解

解壓縮7z文件

7za x phpMyAdmin-3.3.8.1-all-languages.7z -r -o./

參數(shù)含義:

x 代表解壓縮文件,并且是按原始目錄樹(shù)解壓(還有個(gè)參數(shù) e 也是解壓縮文件,但其會(huì)將所有文件都解壓到根下,而不是自己原有的文件夾下)

phpMyAdmin-3.3.8.1-all-languages.7z 是壓縮文件,這里我用phpadmin做測(cè)試。這里默認(rèn)使用當(dāng)前目錄下的phpMyAdmin-3.3.8.1-all-languages.7z

-r 表示遞歸解壓縮所有的子文件夾

-o 是指定解壓到的目錄,-o后是沒(méi)有空格的,直接接目錄。這一點(diǎn)需要注意。

二、補(bǔ)充:linux壓縮7z文件/文件夾命令

7za a -t7z -r Mytest.7z /opt/phpMyAdmin-3.3.8.1-all-languages/*

參數(shù)含義:

a 代表添加文件/文件夾到壓縮包

-t 是指定壓縮類(lèi)型,這里定為7z,可不指定,因?yàn)?za默認(rèn)壓縮類(lèi)型就是7z。

-r 表示遞歸所有的子文件夾

Mytest.7z 是壓縮好后的壓縮包名

/opt/phpMyAdmin-3.3.8.1-all-languages/*:是壓縮目標(biāo)。

注意:7za不僅僅支持.7z壓縮格式,還支持.tar.bz2等壓縮類(lèi)型的。如上所述,用-t指定即可。

linux解壓zip命令

linux怎么解壓zip包,操作方法如下。

設(shè)備:華為筆記本。

系統(tǒng):linux。

軟件:zip文件。

版本:8.0.11。

1、首先在電腦中,連接到linux遠(yuǎn)程主機(jī),并進(jìn)入zip文件所在目錄,如下圖所示。

2、然后使用LS命令列出目錄中文件,確認(rèn)zip文件的全稱(chēng),如下圖所示。

3、接著使用unzip命令解壓zip壓縮包,如下圖所示。

4、然后輸入inflating ,看到該單詞,表明ZIP解壓縮成功了,如下圖所示。

5、如果不放心,可以再次LS查看一下目錄中的文件,如下圖所示解壓成功了。

分享題目:壓縮文件命令linux,壓縮文件命令 Linux
文章位置:http://muchs.cn/article0/hcjcio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、服務(wù)器托管、品牌網(wǎng)站建設(shè)、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管