文件打包與壓縮

Linux 上的壓縮包文件格式,除了 Windows 最常見的*.zip、*.rar、.7z 后綴的壓縮文件,還有 .gz、.xz、.bz2、.tar、.tar.gz、.tar.xz、tar.bz2

文件后綴名

說明

*.zip

zip 程序打包壓縮的文件

*.rar

rar 程序壓縮的文件

*.7z

7zip 程序壓縮的文件

*.tar

tar 程序打包,未壓縮的文件

*.gz

gzip 程序 (GNU zip) 壓縮的文件

*.xz

xz 程序壓縮的文件

*.bz2

tar 打包,gzip 程序壓縮的文件

*.tar.gz

tar打包,gzip程序壓縮的文件

*.tar.xz

tar打包,xz程序壓縮的文件

*.tar.bz2

tar打包,bzip2程序壓縮的文件

*.tar.7z

tar打包,7z程序壓縮的文件

1 zip 壓縮打包程序

?

使用 zip 打包文件

# 將 test 目錄打包成一個(gè)文件,-r 表示遞歸打包包含子目錄的全部?jī)?nèi)容,-q 表示安靜模式,-o 表示輸出文件,其后緊跟打包輸出文件名

zip -r -q -o test.zip ?/home/test

# 使用 du 命令查看打包后文件的大小

du -h test.zip

# 使用 file 命令查看文件大小和類型

file test.zip

?

設(shè)置壓縮級(jí)別為9和1(9最大,1最?。匦麓虬?/p>

# 1表示最快壓縮但體積大,9表示體積最小但耗時(shí)最久,-x 排除上一次我們創(chuàng)建的zip文件,路徑必需為絕對(duì)路徑

zip -r -9 -q -o test_9.zip /home/test -x ~/*.zip

zip -r -1 -q -o test_1.zip /home/test -x ~/*.zip

# 再用 du 命令分別查看默認(rèn)壓縮級(jí)別、最低、最高壓縮級(jí)別及未壓縮的文件的大小,-h 表示可讀,-d 表示所查看文件的深度

du -h -d 0 *.zip ~ | sort

?

創(chuàng)建加密 zip 包

# 使用 -e 參數(shù)可以創(chuàng)建加密壓縮包

zip -r -q -o test.zip ?/home/test

注意: 關(guān)于 zip 命令,因?yàn)?Windows 系統(tǒng)與 Linux/Unix 在文本文件格式上的一些兼容問題,比如換行符(為不可見字符),在 Windows 為 CR+LF(Carriage-Return+Line-Feed:回車加換行),而在 Linux/Unix 上為 LF(換行),所以如果在不加處理的情況下,在 Linux 上編輯的文本,在 Windows 系統(tǒng)上打開可能看起來是沒有換行的。如果你想讓你在 Linux 創(chuàng)建的 zip 壓縮文件在 Windows 上解壓后沒有任何問題,那么你還需要對(duì)命令做一些修改

shell 中的變量有不同類型,可參與運(yùn)算,有作用域限定

# 使用 -l 參數(shù)將 LF 轉(zhuǎn)換為 CR+LF

zip -r -l -o test.zip /home/test

2 使用 unzip 命令解壓縮 zip 文件

?

使用 zip 打包文件

# 將 test.zip 解壓到當(dāng)前目錄

unzip test.zip

# 使用安靜模式,將文件解壓到指定目錄

unzip -q test.zip -d ziptest

# 不想解壓,只想查看壓縮包的內(nèi)容可以使用 -l 參數(shù)

unzip -l test.zip

# ?Linux 上面默認(rèn)使用的是 UTF-8 編碼,防止解壓后出現(xiàn)中文亂碼,要用參數(shù) -O

unzip -O GBK 中文壓縮文件.zip

3 rar打包壓縮命令

在 Linux 上可以使用 rar 和 unrar 工具分別創(chuàng)建和解壓 rar 壓縮包。

?

安裝rar和unrar工具

sudo apt-get update

sudo apt-get install rar unrar

?

從指定文件或目錄創(chuàng)建壓縮包或添加文件到壓縮包

rm *.zip

# 使用a參數(shù)添加一個(gè)目錄~到一個(gè)歸檔文件中,如果該文件不存在就會(huì)自動(dòng)創(chuàng)建

rar a test.rar .

注意:rar 的命令參數(shù)沒有-,如果加上會(huì)報(bào)錯(cuò)。

?

從指定壓縮包文件中刪除某個(gè)文件

rar d test.rar .bashrc

?

查看不解壓文件

rar l test.rar

?

使用 unrar 解壓 rar 文件

# 全路徑解壓

unrar x test.rar

# 去掉路徑解壓

mkdir tmp

unrar e test.rar tmp/

4 tar 打包工具

在 Linux 上面更常用的是 tar 工具,tar 原本只是一個(gè)打包工具,只是同時(shí)還是實(shí)現(xiàn)了對(duì) 7z,gzip,xz,bzip2 等工具的支持,這些壓縮工具本身只能實(shí)現(xiàn)對(duì)文件或目錄(單獨(dú)壓縮目錄中的文件)的壓縮,沒有實(shí)現(xiàn)對(duì)文件的打包壓縮,所以我們也無需再單獨(dú)去學(xué)習(xí)其他幾個(gè)工具,tar 的解壓和壓縮都是同一個(gè)命令,只需參數(shù)不同,使用比較方便。

?

創(chuàng)建一個(gè) tar 包

# -c 表示創(chuàng)建一個(gè) tar 包文件,-f 用于指定創(chuàng)建的文件名,注意文件名必須緊跟在 -f 參數(shù)之后

# 會(huì)自動(dòng)去掉表示絕對(duì)路徑的 /,你也可以使用 -P 保留絕對(duì)路徑符

tar -cf test.tar ~

?

解包一個(gè)文件 (-x參數(shù)) 到指定路徑的已存在目錄 (-C參數(shù))

mkdir tardir

tar -xf test.tar -C tardir

?

只查看不解包文件-t參數(shù)

tar -tf test.tar

?

保留文件屬性和跟隨鏈接(符號(hào)鏈接或軟鏈接),有時(shí)候我們使用tar備份文件當(dāng)你在其他主機(jī)還原時(shí)希望保留文件的屬性(-p參數(shù))和備份鏈接指向的源文件而不是鏈接本身(-h參數(shù))

tar -cphf etc.tar /etc

?

以使用 gzip 工具創(chuàng)建 *.tar.gz 文件為例來說明,只需在創(chuàng)建 tar 文件的基礎(chǔ)上添加 -z 參數(shù),使用 gzip 來壓縮文件

tar -czf etc.tar.gz ~

?

解壓 *.tar.gz 文件

tar -xzf etc.tar.gz

現(xiàn)在我們要使用其他的壓縮工具創(chuàng)建或解壓相應(yīng)文件只需要更改一個(gè)參數(shù)即可:

壓縮文件格式

參數(shù)

*.tar.gz

-z

*.tar.xz

-J

*tar.bz2

-j

作業(yè):![實(shí)驗(yàn)樓](https://dn-simplecloud.shiyanlou.com/4336791496215267665-wm)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,908評(píng)論 6 541
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,324評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 178,018評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,675評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,417評(píng)論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,783評(píng)論 1 329
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,779評(píng)論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,960評(píng)論 0 290
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,522評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,267評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,471評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,009評(píng)論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,698評(píng)論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,099評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,386評(píng)論 1 294
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,204評(píng)論 3 398
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,436評(píng)論 2 378

推薦閱讀更多精彩內(nèi)容