EduCoder Linux之文件打包和解压缩
本實(shí)訓(xùn)主要講解Linux中對(duì)文件/目錄壓縮和解壓縮操作。
隨著多媒體、視頻圖象、文檔映象等技術(shù)的出現(xiàn),數(shù)據(jù)壓縮成了一個(gè)重要研究點(diǎn)。數(shù)據(jù)壓縮基本上是擠壓數(shù)據(jù)使得它占用更少的磁盤(pán)存儲(chǔ)空間和更短的傳輸時(shí)間。壓縮的依據(jù)是數(shù)字?jǐn)?shù)據(jù)中包含大量的重復(fù),它將這些重復(fù)信息用占用空間較少的符號(hào)或代碼來(lái)代替。
Linux 系統(tǒng)中提供很多文件/目錄的壓縮和解壓縮命令,常見(jiàn)的格式有.tar.gz,而Windows上創(chuàng)建的壓縮文件格式是.rar。
本實(shí)訓(xùn)主要講解如何對(duì)Linux文件/目錄設(shè)置特殊的權(quán)限和特殊屬性。
第1關(guān):tar打包命令
- 任務(wù)描述
- 相關(guān)知識(shí)
- 打包
- 解包
- 編程要求
- 測(cè)試說(shuō)明
任務(wù)描述
有時(shí),我們會(huì)在Linux系統(tǒng)中將多個(gè)文件打包成一個(gè)單獨(dú)的文件,通過(guò)本關(guān)的學(xué)習(xí),我們將學(xué)會(huì)如何在Linux系統(tǒng)中將多個(gè)文件/目錄打包生成一個(gè)文件。
本關(guān)任務(wù):使用tar命令完成文件和目錄的打包操作。
相關(guān)知識(shí)
tar(tape archive的簡(jiǎn)寫(xiě))工具可完成許多功能,其名稱源于它的原始功能-創(chuàng)建和讀取歸檔文件和備份磁帶。如今,該工具常用來(lái)將多個(gè)文件或多個(gè)目錄打包成一個(gè)tar文件,或者將某個(gè)tar文件分解開(kāi)。
接下讓我們?cè)敿?xì)的學(xué)習(xí)tar的使用方法。
打包
tar命令可以將多個(gè)文件/目錄進(jìn)行打包,將多個(gè)文件生成一個(gè)文件,生成的文件后綴為.tar。
具體打包命令如下:
tar -cvf 生成的tar包名 要打包的文件/目錄列表
常用命令參數(shù)如下:
案例演示1:
在當(dāng)前目錄下創(chuàng)建a.txt、b.txt和c.txt文件,將其打包成一個(gè)new.tar,具體使用如下命令:
案例演示2:
在當(dāng)前目錄下創(chuàng)建dirA、dirB和dirC目錄,將其打包成一個(gè)newDir.tar,具體使用如下命令:
解包
tar命令可以將已經(jīng)打包好的文件解壓出來(lái)。
具體打包命令如下:
tar -xvf 解壓包名 -C 解壓到指定目錄
常用命令參數(shù)如下:
如果不使用-C(大寫(xiě))參數(shù),則默認(rèn)解壓到當(dāng)前目錄下。
案例演示1:
將當(dāng)前目錄下的a.txt、b.txt和c.txt文件刪除,將打包好的new.tar文件解壓到當(dāng)前目錄,具體使用如下命令:
案例演示2:
在當(dāng)前目錄下創(chuàng)建newDir目錄,將打包好的newDir.tar文件解壓到newDir目錄下,具體使用如下命令:
編程要求
在右側(cè)編輯器中補(bǔ)充代碼,使用tar命令打包和解包,具體編程要求如下:
使用tar命令將當(dāng)前目錄下的oldFile1和oldFile2文件打包成一個(gè)newFile.tar文件;
使用tar命令將當(dāng)前目錄下的oldFile.tar文件解壓到當(dāng)前目錄下。
測(cè)試說(shuō)明
平臺(tái)將對(duì)你編寫(xiě)的代碼進(jìn)行評(píng)測(cè):
預(yù)期輸出:
不因幸運(yùn)而固步自封,不因厄運(yùn)而一蹶不振。真正的強(qiáng)者,善于從順境中找到陰影,從逆境中找到光亮,時(shí)時(shí)校準(zhǔn)自己前進(jìn)的目標(biāo)。——易卜生
開(kāi)始你的任務(wù)吧,祝你成功!
#!/bin/bash#在以下部分寫(xiě)出完成任務(wù)的命令 #*********begin*********# tar -cvf newFile.tar oldFile1 oldFile2 tar -xvf oldFile.tar #********* end *********#第2關(guān):文件壓縮命令
- 任務(wù)描述
- 相關(guān)知識(shí)
- bzip2
- gzip
- zip
- tar命令進(jìn)行壓縮
- 編程要求
- 測(cè)試說(shuō)明
任務(wù)描述
由于磁盤(pán)空間有限,我們通常會(huì)將不常用的大文件進(jìn)行壓縮以便于節(jié)約磁盤(pán)空間,通過(guò)本關(guān)的學(xué)習(xí),我們將學(xué)會(huì)Linux系統(tǒng)上常見(jiàn)的壓縮命令。
本關(guān)任務(wù):對(duì)系統(tǒng)中已存在的文件/目錄進(jìn)行壓縮操作。
相關(guān)知識(shí)
Linux下存在多個(gè)文件壓縮工具,常用的有bzip2、gzip和zip。這三個(gè)工具都是可以將一個(gè)文件進(jìn)行壓縮操作,使其在不丟失任何信息的情況下占用較少的磁盤(pán)空間。而如何對(duì)于多個(gè)文件/目錄進(jìn)壓縮操作呢?
我們通過(guò)上一關(guān)的學(xué)習(xí),我們了解到了使用tar命令可以將多文件/目錄打包生成一個(gè)文件,那么對(duì)于多文件/目錄的壓縮操作分為兩步:第一步是將其進(jìn)行打包,然后將打包過(guò)后的文件進(jìn)行壓縮操作。
接下讓我們?cè)敿?xì)的學(xué)習(xí)bzip2、gzip和zip的使用方法。
bzip2
bzip2命令用于創(chuàng)建和管理(包括解壓縮).bz2格式的壓縮包。
具體命令如下:
bzip2 命令參數(shù) 指定要壓縮的文件
常用命令參數(shù)如下:
案例演示:
使用bzip2命令對(duì)當(dāng)前目錄下的new.tar文件進(jìn)行壓縮,具體使用如下命令:
gzip
gzip命令用于創(chuàng)建和管理(包括解壓縮).gz格式的壓縮包。
具體命令如下:
gzip 命令參數(shù) 指定要壓縮的文件
常用命令參數(shù)如下:
案例演示:
使用gzip命令對(duì)當(dāng)前目錄下的new.tar文件進(jìn)行壓縮,具體使用如下命令:
zip
zip命令對(duì)文件進(jìn)行打包操作。zip是個(gè)使用廣泛的壓縮程序,文件經(jīng)它壓縮后會(huì)另外產(chǎn)生具有.zip擴(kuò)展名的壓縮文件。
具體命令如下:
zip 命令參數(shù) 指定生成的壓縮文件名 要被壓縮的文件/目錄列表
常用命令參數(shù)如下:
案例演示:
使用zip命令將newDir目錄下的所有文件/目錄壓縮生成newDir.zip,具體使用如下命令:
tar命令進(jìn)行壓縮
在上一關(guān)的學(xué)習(xí)中,我們學(xué)會(huì)了使用tar命令對(duì)多個(gè)文件/目錄進(jìn)行打包操作,如果針對(duì)多文件/目錄進(jìn)行壓縮操作時(shí),首先使用tar將其打包生成一個(gè)文件,然后使用bzip2和gzip對(duì)其進(jìn)行壓縮,那么這里也可以使用tar命令一步就實(shí)現(xiàn)對(duì)多文件/目錄進(jìn)行壓縮操作。
采用bzip2方式執(zhí)行tar命令進(jìn)行壓縮的具體命令如下:
tar -jcvf 指定生成的壓縮文件名 要被壓縮的文件/目錄列表
常用命令參數(shù)如下:
采用gzip進(jìn)行壓縮的具體命令如下:
tar -zcvf 指定生成的壓縮文件名 要被壓縮的文件/目錄列表
常用命令參數(shù)如下:
案例演示1:
使用tar命令將當(dāng)前目錄下的a.txt、b.txt和c.txt文件壓縮生成new.tar.bz2,具體使用如下命令:
這里也可以分為兩步進(jìn)行操作,首先是創(chuàng)建tar包,然后對(duì)tar包使用bzip2進(jìn)行壓縮操作。
案例演示2:
使用tar命令將當(dāng)前目錄下的a.txt、b.txt和c.txt文件壓縮生成new.tar.gz,具體使用如下命令:
這里也可以分為兩步進(jìn)行操作,首先是創(chuàng)建tar包,然后對(duì)tar包使用gzip進(jìn)行壓縮操作。
編程要求
在右側(cè)編輯器中補(bǔ)充代碼,對(duì)系統(tǒng)中已存在的文件/目錄進(jìn)行壓縮操作,具體編程要求如下:
使用tar命令將當(dāng)前目錄下的oldFile1和oldFile2文件打包壓縮成一個(gè)newFile.tar.gz文件;
使用bzip2命令對(duì)當(dāng)前目錄下的oldFile.tar文件壓縮;
使用zip命令將當(dāng)前目錄下的oldDir目錄所有文件/目錄壓縮生成oldDir.zip。
測(cè)試說(shuō)明
平臺(tái)會(huì)對(duì)你編寫(xiě)的代碼進(jìn)行評(píng)測(cè):
預(yù)期輸出:
倘若你想達(dá)成目標(biāo),便得在心中描繪出目標(biāo)達(dá)成后的景象;那么,夢(mèng)想必會(huì)成真?!?guó)當(dāng)代動(dòng)機(jī)大師 理查丹尼
開(kāi)始你的任務(wù)吧,祝你成功!
#!/bin/bash#在以下部分寫(xiě)出完成任務(wù)的命令 #*********begin*********# tar -zcvf newFile.tar.gz oldFile1 oldFile2 bzip2 oldFile.tar zip -r oldDir.zip oldDir #********* end *********#第3關(guān):文件解壓縮命令
- 任務(wù)描述
- 相關(guān)知識(shí)
- bunzip2
- gunzip
- unzip
- tar命令進(jìn)行解壓縮
- 編程要求
- 測(cè)試說(shuō)明
任務(wù)描述
通常,我們上網(wǎng)下載的文件一般都是壓縮過(guò)后的文件,通過(guò)本關(guān)的學(xué)習(xí),我們可以學(xué)會(huì)如何將一個(gè)壓縮文件進(jìn)行解壓操作。
本關(guān)任務(wù):將壓縮文件進(jìn)行解壓縮操作。
相關(guān)知識(shí)
Linux下存在多個(gè)文件壓縮工具,上一關(guān)我們介紹了包括bzip2、gzip和zip。針對(duì)這三種壓縮工具生成的壓縮包,我們可以使用bunzip2、gunzip和unzip命令對(duì)其進(jìn)行解壓縮。
接下讓我們?cè)敿?xì)的學(xué)習(xí)bunzip2、gunzip和unzip的使用方法。
bunzip2
bunzip2命令解壓縮由bzip2指令創(chuàng)建的.bz2壓縮包。使用bzip2 -d命令也可以將.bz2壓縮包進(jìn)行解壓。
具體命令如下:
bunzip2 命令參數(shù) 指定要解壓的文件
常用命令參數(shù)如下:
案例演示:
使用bunzip2命令對(duì)當(dāng)前目錄下的new.tar.bz2文件進(jìn)行解壓操作,具體使用如下命令:
注意:這里解壓生成了一個(gè)tar包,如果想得到tar包里的內(nèi)容,則需要對(duì)tar包進(jìn)行解包操作(詳細(xì)命令參考第一關(guān)知識(shí)點(diǎn))。
gunzip
gunzip命令解壓縮由gzip指令創(chuàng)建的.gz壓縮包。使用gzip -d命令也可以將.gz壓縮包進(jìn)行解壓。
具體命令如下:
gunzip 命令參數(shù) 指定要解壓的文件
常用命令參數(shù)如下:
案例演示:
使用gunzip命令對(duì)當(dāng)前目錄下的new.tar.gz文件進(jìn)行解壓操作,具體使用如下命令:
注意:這里解壓生成了一個(gè)tar包,如果想得到tar包里的內(nèi)容,則需要對(duì)tar包進(jìn)行解包操作(詳細(xì)命令參考第一關(guān)知識(shí)點(diǎn))。
unzip
unzip命令用于解壓縮由zip命令壓縮的.zip壓縮包。
具體命令如下:
unzip 命令參數(shù) 指定要解壓的文件
常用命令參數(shù)如下:
案例演示:
使用unzip命令對(duì)當(dāng)前目錄下的newDir.zip文件進(jìn)行解壓操作,具體使用如下命令:
tar命令進(jìn)行解壓縮
在上一關(guān)的學(xué)習(xí)中,我們學(xué)會(huì)了使用tar命令對(duì)多個(gè)文件/目錄進(jìn)行打包壓縮操作,本關(guān)將繼續(xù)講解使用tar命令對(duì)文件進(jìn)行解壓縮操作。
采用bunzip2進(jìn)行解壓縮的具體命令如下:
tar -jxvf 指定要解壓的文件
常用命令參數(shù)如下:
采用gzip進(jìn)行壓縮的具體命令如下:
tar -zxvf 指定要解壓的文件
常用命令參數(shù)如下:
案例演示1:
使用tar命令對(duì)當(dāng)前目錄下的new.tar.bz2文件進(jìn)行解壓,具體使用如下命令:
這里也可以分為兩步進(jìn)行操作,首先是使用bunzip2進(jìn)行解壓生成tar包,然后對(duì)tar包進(jìn)行解包操作。
案例演示2:
使用tar命令對(duì)當(dāng)前目錄下的 new.tar.gz文件進(jìn)行解壓,具體使用如下命令:
這里也可以分為兩步進(jìn)行操作,首先是使用gunzip進(jìn)行解壓生成tar包,然后對(duì)tar包進(jìn)行解包操作。
編程要求
在右側(cè)編輯器中補(bǔ)充代碼,將壓縮文件進(jìn)行解壓,具體編程要求如下:
使用tar命令解壓當(dāng)前目錄下的oldFile.tar.gz文件;
使用bunzip2命令解壓當(dāng)前目錄下的oldFile.tar.bz2文件;
使用unzip命令解壓當(dāng)前目錄下的oldDir.zip。
測(cè)試說(shuō)明
平臺(tái)將對(duì)你編寫(xiě)的代碼進(jìn)行評(píng)測(cè):
預(yù)期輸出:
真正的人生,只有在經(jīng)過(guò)艱難卓絕的斗爭(zhēng)之后才能實(shí)現(xiàn)?!?/p>
開(kāi)始你的任務(wù)吧,祝你成功!
#!/bin/bash#在以下部分寫(xiě)出完成任務(wù)的命令 #*********begin*********# tar -zxvf oldFile.tar.gz bunzip2 oldFile.tar.bz2 unzip oldDir.zip #********* end *********#總結(jié)
以上是生活随笔為你收集整理的EduCoder Linux之文件打包和解压缩的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: EduCoder Linux文件/目录高
- 下一篇: Linux磁盘空间被占满?清空回收站试试