linux命令 打包,壓縮與解壓縮

2021-05-22 10:38:06 字數 2912 閱讀 4212

今天要用ftp從其他賬戶下get檔案,

ftp 192.168.2.89

cd cin/bin

get 檔名

但傳到本端發現檔案原來的可執行許可權沒有了。

所以對檔案先進行打包,打包不會對檔案進行改變包括許可權

我們知道windows系統主要有兩種壓縮檔案格式:.zip與.rar

但linux系統的壓縮檔案格式就比較多:.tar,.tar.gz,.tar.bz2,.tar.z,.gz,.bz2,.z,.zip,.rar

下面對linux檔案的打包壓縮進行一下小結:

1.首先區分打包和壓縮:

打包:是將多個檔案,或目錄變成乙個總的檔案,檔案不會變小,說不定還會變大,增加一些附加的資訊來註明檔案的資訊比如位置什麼的

壓縮:將乙個大的檔案通過某個壓縮演算法變成小檔案。注意壓縮只是對乙個檔案進行操作,當要對多個檔案進行壓縮時就要借助於打包了,現打包再壓縮

2.打包命令

格式:tar [-c/x/t ruvfppn]

打包後的檔名

要打包的檔案或目錄

選項:c x t只能用乙個

-c  建立乙個打包檔案

-x 解開乙個打包檔案

-t   檢視tar包中的檔案

-v  顯示檔案

-r  增加檔案到某一包中

-u 用一同名檔案更新包中的檔案

-f 使用檔名,在f後直接使用檔名,不能再跟引數

-p  保持原檔案的屬性

-p 使用絕對路徑

- n 設定日期(yyyy/mm/dd),比該時期還要新的檔案才會被打包

-exclude 檔名:排除不被打包的檔案

例子:tar –cvf mysql-5.0.tar mysql-----把整個目錄mysql中檔案打包到mysql-5.0.tar

tar – rf mysql-5.0.tar mysql.conf ------將檔案mysql.conf增加到包mysql-5.0.tar

tar –uf mysql-5.0.tar mysql.conf --------用檔案mysql.conf更新包中的檔案mysql.conf

tar –xvf mysql-5.0.tar        -------開啟包mysql-5.0.tar中的檔案到當前目錄

3.壓縮與解壓縮命令

(1) tar [-c/xz/j/z]

打包壓縮後的檔名

要壓縮的檔名或目錄名

可以對目錄進行先打包再壓縮,形成.tar.gz/.tar.bz2壓縮檔案

gzip是gnu組織開發的壓縮程式,形成.gz檔案,對應的解壓程式為gunzip

bzip2是壓縮能力更強的壓縮程式,形成.bz2檔案,對應的解壓程式為bunzip2

compress也是一種壓縮程式,形成.z檔案,對應的解壓縮程式uncompress,這一種一般用的比較少

-z  呼叫gzip/gunzip程式

-j 呼叫bzip2/bunzip2程式

-z 呼叫compress/uncompress程式

舉例:tar –cvzf mysql-5.0.tar.gz mysql ------先打包再壓縮,呼叫gzip程式

tar – xvzf mysql-5.0.tar.gz          ------呼叫gunzip壓縮程式,解壓

tar – cvjf mysql-5.0.tar.bz2 mysql  -----呼叫bzip2程式

tar –xvjf mysql-5.0.tar.bz2          ------呼叫bunzip2壓縮程式

tar – cvzf mysql-5.0.tar.z mysql 

tar – xvzf  mysql-5.0.tar.z

(2) gzip [-dlrv]要壓縮的檔名

對某一檔案壓縮,形成.gz檔案,而不能將整個目錄進行壓縮成乙個檔案

直接使用gzip程式/gunzip程式,壓縮完以後會刪除原始檔案

-d       decompress ,解壓縮

-l         list,對每個壓縮檔案,顯示下列字段:壓縮檔案的大小,未壓縮檔案的大小,壓縮比,未壓縮檔案的名字

-v       verbose,對每乙個壓縮和解壓的檔案,顯示檔名和壓縮比。

-r       遞迴式地查詢指定目錄並壓縮其中的所有檔案或者是解壓縮。

gzip –v *         -----------對當前目錄下所有目錄進行壓縮,對每個檔案形成乙個.gz壓縮檔案,並顯示檔名和壓縮比

gzip –dv *   ------------對當前目錄下的所有.gz壓縮檔案進行解壓,並顯示檔名和壓縮比

gunzip  *    ------------對當前目錄下的壓縮檔案進行解壓縮

gzip –v tompcdr.log.2010-07-28-19.999999

gzip –l tompcdr.log.2010-07-28-19.999999

(3)bzip2[-kvzd]要壓縮的檔名

-v      壓縮或解壓縮檔案時,顯示詳細的資訊

-z     強制壓縮

-k     keep壓縮完之後,保留原檔案

-d    解壓縮

(4).zip格式

為了壓縮和解壓windows下常用的.zip格式,linux提供了zip和unzip程式。可以把多個檔案打包壓縮成乙個檔案,這點和gzip,bzip2是不一樣的

zip  zip格式壓縮檔案 原檔案

unzip  zip格式壓縮檔案

舉例:zip all all.zip *.txt -----將當前目錄下所有.txt檔案壓縮到all.zip

unzip all.zip

(5)rar格式的檔案

對rar格式的出來,要安裝rar for linux軟體。安裝完以後會有rar和unrar程式。與zip程式的使用時一樣的。

打包 壓縮 解壓縮命令

tar語法 打包 tar cvf name.tar 打包不壓縮,大小沒變化 壓縮tar czvf name.tar.gz z引數打包並壓縮成.tar.gz格式 tar cjvf name.tar.bz2 j引數打包並且壓縮成.tar.bz2格式 解壓縮 tar xzvf name.tar.gz ta...

Linux打包壓縮解壓縮命令總結

壓縮 tar zcvf filename.tar.gz dirname 解壓 tar zxvf filename.tar.gz 壓縮 tar jcvf filename.tar.bz2 dirname 解壓 tar jxvf filename.tar.bz2 打包 tar cvf filename....

tar 壓縮與解壓縮打包命令

一直都只記著用tar命令怎麼給gz的檔案解壓縮。可是,一旦下到個bz2的檔案就不知道怎麼處理了。這就是知識不紮實的結果,無奈,只好仔細查一下man手冊,和向 鳥哥 請教。現記錄一下,呵呵。高手勿怪。tar cxtzjvfppn 檔案與目錄 引數 c 建立壓縮檔案的引數命令 creat的意思 x 解壓...