一开皿、歸檔
# 歸檔:
tar -zcvf [歸檔后文件的名稱] [你要?dú)w檔的文件、目錄](méi)
如: tar -zcvf test.tar.gz a.js b.json cDir
//test.tar.gz:是歸檔后文件的名字悔详; a.js堪伍、b.json纪挎、cDir是需要?dú)w檔的目標(biāo)牙言。
tar
-c: 建立壓縮檔案 ===> 歸檔
-x:解壓 ====>解檔
-t:查看內(nèi)容
-r:向壓縮歸檔文件末尾追加文件
-u:更新原壓縮包中的文件
這五個(gè)是獨(dú)立的命令,壓縮解壓都要用到其中一個(gè)菜秦,可以和別的命令連用但
只能用其中一個(gè)甜害。
下面的參數(shù)是根據(jù)需要在壓縮或解壓檔案時(shí)可選的。
-z:有g(shù)zip屬性的
-j:有bz2屬性的
-Z:有compress屬性的
-v:顯示所有過(guò)程
-O:將文件解開(kāi)到標(biāo)準(zhǔn)輸出
下面的參數(shù)-f是必須的
-f: 使用檔案名字喷户,切記唾那,這個(gè)參數(shù)是最后一個(gè)參數(shù),后面只能接檔案名褪尝。
1闹获、
tar -cf all.tar *.jpg
這條命令是將所有.jpg的文件打成一個(gè)名為all.tar的包。-c是表示產(chǎn)生新的包河哑,-f指定包的文件名避诽。
2、
tar -rf all.tar *.gif
這條命令是將所有.gif的文件增加到all.tar的包里面去璃谨。-r是表示增加文件的意思沙庐。
3、
# tar -uf all.tar logo.gif
這條命令是更新原來(lái)tar包all.tar中l(wèi)ogo.gif文件佳吞,
-u是表示更新文件的意思拱雏。
4、
# tar -tf all.tar
這條命令是列出all.tar包中所有文件底扳,
-t是列出文件的意思
二铸抑、解檔
tar -xvf file.tar //解壓 tar包
tar -xzvf file.tar.gz //解壓tar.gz
tar -xjvf file.tar.bz2 //解壓 tar.bz2
tar -xZvf file.tar.Z //解壓tar.Z
unrar e file.rar //解壓rar
總結(jié)
1、.tar 用 tar -xvf 解壓
2衷模、.gz 用 gzip -d 或者 gunzip 解壓
3鹊汛、.tar.gz和.tgz 用 tar -xzf 解壓
4、.bz2 用 bzip2 -d或者用bunzip2 解壓
5阱冶、.tar.bz2用tar -xjf 解壓
6刁憋、.Z 用 uncompress 解壓
7、.tar.Z 用tar -xZf 解壓
8木蹬、.rar 用 unrar e解壓
9至耻、.zip 用 unzip 解壓
三、解/壓縮
1.zip
$ zip -r myfile.zip ./*(或者是想要壓縮的文件夾)
將當(dāng)前目錄下的所有文件和文件夾全部壓縮成myfile.zip文件,
-r表示遞歸壓縮子目錄下所有文件。
2.unzip
$ unzip -o -d /home/sunny myfile.zip
把myfile.zip文件解壓到 /home/sunny/
-o:不提示的情況下覆蓋文件尘颓;
-d:-d /home/sunny 指明將文件解壓縮到/home/sunny目錄下是尖;
3.其他
$ zip -d myfile.zip smart.txt
刪除壓縮文件中smart.txt文件
$ zip -m myfile.zip ./rpm_info.txt
向壓縮文件中myfile.zip中添加rpm_info.txt文件
要使用 zip 來(lái)壓縮文件,在 shell 提示下鍵入下面的命令:
zip -r filename.zip filesdir
在這個(gè)例子里泥耀,filename.zip 代表你創(chuàng)建的文件,filesdir 代表你想放置新 zip 文件的目錄蛔添。-r 選項(xiàng)指定你想遞歸地(recursively)包括所有包括在 filesdir 目錄中的文件痰催。
要抽取 zip 文件的內(nèi)容,鍵入以下命令:
unzip filename.zip
你可以使用 zip 命令同時(shí)處理多個(gè)文件和目錄迎瞧,方法是將它們逐一列出夸溶,并用空格間隔:
zip -r filename.zip file1 file2 file3 /usr/work/school
上面的命令把 file1、file2凶硅、 file3缝裁、以及 /usr/work/school 目錄的內(nèi)容(假設(shè)這個(gè)目錄存在)壓縮起來(lái),然后放入 filename.zip 文件中足绅。
zip Linux上適用的參數(shù):
-1 : 最快壓縮捷绑,壓縮率最差。
-9 : 最大壓縮氢妈,壓縮率最佳粹污。
-b : 暫存文件的路徑。這個(gè)參數(shù)一般在要產(chǎn)生的 zip 文件存在首量,而硬盤(pán)現(xiàn)有空間不足時(shí)壮吩。
-c : 替新增或更新的文件增加一行注解。
-d : 從 zip 文件移出一個(gè)文件加缘。
-D : 不要在 zip 文件中儲(chǔ)存文件的目錄信息鸭叙。
-f : 以新文件取代現(xiàn)有文件。
-F : 修復(fù)已經(jīng)損毀的壓縮文件拣宏。
-g : 將文件壓縮附加到 zip 文件中沈贝。
-h : 顯示輔助說(shuō)明。
-i : 指定要含入的某些特定文件蚀浆。
-j : 只儲(chǔ)存文件的名稱缀程,不含目錄。
-k : 強(qiáng)迫使用 MSDOS 格式文件名市俊。
-l : 將 CR ( Carriage Return ) LF ( Line Feed ) 轉(zhuǎn)換成 LF杨凑,一般是要將 MS-DOS 上的文本文件壓縮后拿到 UNIX 下使用時(shí)才使用此參數(shù)。這只適用于文本文件 ( .txt )摆昧,如果用于二進(jìn)制文件則會(huì)造成二進(jìn)制文件損毀撩满。
-L : 顯示 zip 命令的版權(quán)。
-m : 將特定文件移入 zip 文件中,并且刪除特定文件伺帘。
-n : 不壓縮特定擴(kuò)展名的文件昭躺。
-o : 將 zip 文件的時(shí)間設(shè)成最后修正 zip 文件的時(shí)間。
-q : 安靜模式伪嫁,不會(huì)顯示相關(guān)訊息和提示领炫。
-r : 包括子目錄。
-t : 只處理 mmddyy 日期以后的文件张咳。
-T : 測(cè)試 zip 文件是否正常帝洪。
-u : 只更新改變過(guò)的文件和新文件。
-v : 顯示版本資訊或詳細(xì)訊息脚猾。
-x : 不需要壓縮的文件葱峡。
-y : 將 symbolic link 壓縮,而不是壓縮所連結(jié)到的文件龙助。
-z : 為 zip 文件增加注解砰奕。
-# : 設(shè)定壓縮速度,-0 表示不壓縮提鸟,-1 表示最快速度的壓縮军援,
-9 表示最慢速度的壓縮 ( 最佳化的壓縮 ),預(yù)設(shè)值為 -6沽一。
-@ : 從標(biāo)準(zhǔn)輸入讀取文件名稱盖溺。
unzip Linux上適用的參數(shù):
-x 文件列表 解壓縮文件,但不包括指定的file文件铣缠。
-v 查看壓縮文件目錄烘嘱,但不解壓蝗蛙。
-t 測(cè)試文件有無(wú)損壞,但不解壓哮内。
-d 目錄 把壓縮文件解到指定目錄下北发。
-z 只顯示壓縮文件的注解琳拨。
-n 不覆蓋已經(jīng)存在的文件屯曹。
-o 覆蓋已存在的文件且不要求用戶確認(rèn)。
-j 不重建文檔的目錄結(jié)構(gòu)颜启,把所有文件解壓到同一目錄下浪讳。
例1:將壓縮文件text.zip在當(dāng)前目錄下解壓縮淹遵。
$ unzip text.zip
例2:將壓縮文件text.zip在指定目錄/tmp下解壓縮,如果已有相同的文件存在,要求unzip命令不覆蓋原先的文件淌实。
$ unzip -n text.zip -d /tmp
例3:查看壓縮文件目錄拆祈,但不解壓倘感。
$ unzip -v text.zip
zgrep命令
這個(gè)命令的功能是在壓縮文件中尋找匹配的正則表達(dá)式老玛,用法和grep命令一樣蜡豹,只不過(guò)操作的對(duì)象是壓縮文件。如果用戶想看看在某個(gè)壓縮文件中有沒(méi)有某一句話弄诲,便可用zgrep命令齐遵。
按照約定俗成塔插,用 gzip 來(lái)壓縮的文件的擴(kuò)展名是 .gz佑淀;用 bzip2 來(lái)壓縮的文件的擴(kuò)展名是 .bz2;用 zip 壓縮的文件的擴(kuò)展名是 .zip逢倍。
用 gzip 壓縮的文件可以使用 gunzip 來(lái)解壓较雕;用 bzip2 壓縮的文件可以使用 bunzip2 來(lái)解壓挚币;用 zip 壓縮的文件可以使用 unzip 來(lái)解壓妆毕。
bzip2 和 bunzip2
要使用 bzip2 來(lái)壓縮文件笛粘,在 shell 提示下鍵入以下命令:
bzip2 filename
文件即會(huì)被壓縮并被保存為 filename.bz2。
要擴(kuò)展壓縮的文件润努,鍵入以下命令:
bunzip2 filename.bz2
filename.bz2 文件會(huì)被刪除铺浇,而繼之以 filename鳍侣。
你可以使用 bzip2 命令同時(shí)處理多個(gè)文件和目錄吼拥,方法是將它們逐一列出扔罪,并用空格間隔:
bzip2 filename.bz2 file1 file2 file3 /usr/work/school
上面的命令把 file1矿酵、file2、 file3敞咧、以及 /usr/work/school 目錄的內(nèi)容(假設(shè)這個(gè)目錄存在)壓縮起來(lái)休建,然后放入 filename.bz2 文件中测砂。
gzip 和 gunzip
要使用 gzip 來(lái)壓縮文件砌些,在 shell 提示下鍵入以下命令:
gzip filename
文件即會(huì)被壓縮存璃,并被保存為 filename.gz纵东。
要擴(kuò)展壓縮的文件偎球,鍵入以下命令:
gunzip filename.gz
filename.gz 會(huì)被刪除,而繼之以 filename。
你可以使用 gzip 命令同時(shí)處理多個(gè)文件和目錄岂傲,方法是將它們逐一列出镊掖,并用空格間隔:
gzip -r filename.gz file1 file2 file3 /usr/work/school
上面的命令把 file1亩进、file2归薛、 file3主籍、以及 /usr/work/school 目錄的內(nèi)容(假設(shè)這個(gè)目錄存在)壓縮起來(lái)千元,然后放入 filename.gz 文件中幸海。
要獲得有關(guān)這兩個(gè)命令的詳細(xì)信息,在 shell 提示下鍵入 man gzip 和 man gunzip 來(lái)閱讀 gzip 和 gunzip 命令的說(shuō)明書(shū)頁(yè)。
zip 和 unzip
要使用 zip 來(lái)壓縮文件父款,在 shell 提示下鍵入下面的命令:
zip -r filename.zip filesdir
在這個(gè)例子里憨攒,filename.zip 代表你創(chuàng)建的文件肝集,filesdir 代表你想放置新 zip 文件的目錄蛛壳。-r 選項(xiàng)指定你想遞歸地(recursively)包括所有包括在 filesdir 目錄中的文件衙荐。
要抽取 zip 文件的內(nèi)容砌函,鍵入以下命令:
unzip filename.zip
你可以使用 zip 命令同時(shí)處理多個(gè)文件和目錄讹俊,方法是將它們逐一列出仍劈,并用空格間隔:
zip -r filename.zip file1 file2 file3 /usr/work/school
上面的命令把 file1贩疙、file2屋群、 file3芍躏、以及 /usr/work/school 目錄的內(nèi)容(假設(shè)這個(gè)目錄存在)壓縮起來(lái)庇楞,然后放入 filename.zip 文件中吕晌。