




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
tar命令
tar可以為文件和目錄創(chuàng)建檔案。利用tar,用戶可以為某一特定文件創(chuàng)建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文
件。tar最初被用來在磁帶上創(chuàng)建檔案,現(xiàn)在,用戶可以在任何設(shè)備上創(chuàng)建檔案,如軟盤。利用tar命令,可以把一大堆的文件和目錄全部打包成一個文件,這
對于備份文件或?qū)讉€文件組合成為一個文件以便于網(wǎng)絡(luò)傳輸是非常有用的。Linux上的tar是GNU版本的。
語法:tar[主選項+輔選項]文件或者目錄
使用該命令時,主選項是必須要有的,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。
主選項:
c創(chuàng)建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。
r把要存檔的文件追加到檔案文件的未尾。例如用戶已經(jīng)作好備份文件,又發(fā)現(xiàn)還有一個目錄或是一些文件忘記備份了,這時可以使用該選項,將忘記的目錄或文件追加到備份文件中。
t列出檔案文件的內(nèi)容,查看已經(jīng)備份了哪些文件。
u更新文件。就是說,用新增的文件取代原備份文件,如果在備份文件中找不到要更新的文件,則把它追加到備份文件的最后。
x從檔案文件中釋放文件。
輔助選項:
b該選項是為磁帶機設(shè)定的。其后跟一數(shù)字,用來說明區(qū)塊的大小,系統(tǒng)預(yù)設(shè)值為20(20*512bytes)。
f使用檔案文件或設(shè)備,這個選項通常是必選的。
k保存已經(jīng)存在的文件。例如我們把某個文件還原,在還原的過程中,遇到相同的文件,不會進行覆蓋。
m在還原文件時,把所有文件的修改時間設(shè)定為現(xiàn)在。
M創(chuàng)建多卷的檔案文件,以便在幾個磁盤中存放。
v詳細報告tar處理的文件信息。如無此選項,tar不報告文件信息。
w每一步都要求確認。
z用gzip來壓縮/解壓縮文件,加上該選項后可以將檔案文件進行壓縮,但還原時也一定要使用該選項進行解壓縮。
Linux下的壓縮文件剖析
對于剛剛接觸Linux的人來說,一定會給Linux下一大堆各式各樣的文件名給搞暈。別個不說,單單就壓縮文件為例,我們知道在Windows
下最常見的壓縮文件就只有兩種,一是,zip,另一個是.rap。可是Linux就不同了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar
等眾多的壓縮文件名,此外windows下的.zip和.rar也可以在Linux下使用,不過在Linux使用.zip和.rar的人就太少了。本文就
來對這些常見的壓縮文件進行一番小結(jié),希望你下次遇到這些文件時不至于被搞暈。
在具體總結(jié)各類壓縮文件之前呢,首先要弄清兩個概念:打包和壓縮。打包是指將一大堆文件或目錄什么的變成一個總的文件,壓縮則是將一個大的文
件通過一些壓縮算法變成一個小文件。為什么要區(qū)分這兩個概念呢?其實這源于Linux中的很多壓縮程序只能針對一個文件進行壓縮,這樣當(dāng)你想要壓縮一大堆
文件時,你就得先借助另它的工具將這一大堆文件先打成一個包,然后再就原來的壓縮程序進行壓縮。
Linux下最常用的打包程序就是tar了,使用tar程序打出來的包我們常稱為tar包,tar包文件的命令通常都是以.tar結(jié)尾的。生成tar包后,就可以用其它的程序來進行壓縮了,所以首先就來講講tar命令的基本用法:
tar命令的選項有很多(用mantar可以查看到),但常用的就那么幾個選項,下面來舉例說明一下:
#tar-cfall.tar*.jpg
這條命令是將所有.jpg的文件打成一個名為all.tar的包。-c是表示產(chǎn)生新的包,-f指定包的文件名。
#tar-rfall.tar*.gif
這條命令是將所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
#tar-ufall.tarlogo.gif
這條命令是更新原來tar包all.tar中l(wèi)ogo.gif文件,-u是表示更新文件的意思。
#tar-tfall.tar
這條命令是列出all.tar包中所有文件,-t是列出文件的意思
#tar-xfall.tar
這條命令是解出all.tar包中所有文件,-t是解開的意思
以上就是tar的最基本的用法。為了方便用戶在打包解包的同時可以壓縮或解壓文件,tar提供了一種特殊的功能。這就是tar可以在打包或解包的同時調(diào)用其它的壓縮程序,比如調(diào)用gzip、bzip2等。
1)tar調(diào)用gzip
gzip是GNU組織開發(fā)的一個壓縮程序,.gz結(jié)尾的文件就是gzip壓縮的結(jié)果。與gzip相對的解壓程序是gunzip。tar中使用-z這個參數(shù)來調(diào)用gzip。下面來舉例說明一下:
#tar-czfall.tar.gz*.jpg
這條命令是將所有.jpg的文件打成一個tar包,并且將其用gzip壓縮,生成一個gzip壓縮過的包,包名為all.tar.gz
#tar-xzfall.tar.gz
這條命令是將上面產(chǎn)生的包解開。
2)tar調(diào)用bzip2
bzip2是一個壓縮能力更強的壓縮程序,.bz2結(jié)尾的文件就是bzip2壓縮的結(jié)果。與bzip2相對的解壓程序是bunzip2。tar中使用-j這個參數(shù)來調(diào)用gzip。下面來舉例說明一下:
#tar-cjfall.tar.bz2*.jpg
這條命令是將所有.jpg的文件打成一個tar包,并且將其用bzip2壓縮,生成一個bzip2壓縮過的包,包名為all.tar.bz2
#tar-xjfall.tar.bz2
這條命令是將上面產(chǎn)生的包解開。
3)tar調(diào)用compress
compress也是一個壓縮程序,但是好象使用compress的人不如gzip和bzip2的人多。.Z結(jié)尾的文件就是bzip2壓縮的
結(jié)果。與compress相對的解壓程序是uncompress。tar中使用-Z這個參數(shù)來調(diào)用gzip。下面來舉例說明一下:
#tar-cZfall.tar.Z*.jpg
這條命令是將所有.jpg的文件打成一個tar包,并且將其用compress壓縮,生成一個uncompress壓縮過的包,包名為all.tar.Z
#tar-xZfall.tar.Z
這條命令是將上面產(chǎn)生的包解開
有了上面的知識,你應(yīng)該可以解開多種壓縮文件了,下面對于tar系列的壓縮文件作一個小結(jié):
1)對于.tar結(jié)尾的文件
tar-xfall.tar
2)對于.gz結(jié)尾的文件
gzip-dall.gz
gunzipall.gz
3)對于.tgz或.tar.gz結(jié)尾的文件
tar-xzfall.tar.gz
tar-xzfall.tgz
4)對于.bz2結(jié)尾的文件
bzip2-dall.bz2
bunzip2all.bz2
5)對于tar.bz2結(jié)尾的文件
tar-xjfall.tar.bz2
6)對于.Z結(jié)尾的文件
uncompressall.Z
7)對于.tar.Z結(jié)尾的文件
tar-xZfall.tar.z
另外對于Window下的常見壓縮文件.zip和.rar,Linux也有相應(yīng)的方法來解壓它們:
1)對于.zip
linux下提供了zip和unzip程序,zip是壓縮程序,unzip是解壓程序。它們的參數(shù)選項很多,這里只做簡單介紹,依舊舉例說明一下其用法:
#zipall.zip*.jpg
這條命令是將所有.jpg的文件壓縮成一個zip包
#unzipall.zip
這條命令是將all.zip中的所有文件解壓出來
2)對于.rar
要在linux下處理.rar文件,需要安裝RARforLinux,可以從網(wǎng)上下載,但要記住,RARforLinux
不是免費的;然后安裝:
#tar-xzpvfrarlinux-3.2.0.tar.gz
#cdrar
#make
這樣就安裝好了,安裝后就有了rar和unrar這兩個程序,rar是壓縮程序,unrar是解壓程序。它們的參數(shù)選項很多,這里只做簡單介紹,依舊舉例說明一下其用法:
#raraall*.jpg
這條命令是將所有.jpg的文件壓縮成一個rar包,名為all.rar,該程序會將.rar擴展名將自動附加到包名后。
#unrareall.rar
這條命令是將all.rar中的所有文件解壓出來
到此為至,我們已經(jīng)介紹過linux下的tar、gzip、gunzip、bzip2、bunzip2、compress、
uncompress、zip、unzip、rar、unrar等程式,你應(yīng)該已經(jīng)能夠使用它們對.tar、.gz、.tar.gz、.tgz、.
bz2、.tar.bz2、.Z、.tar.Z、.zip、.rar這10種壓縮文件進行解壓了,以后應(yīng)該不需要為下載了一個軟件而不知道如何在
Linux下解開而煩惱了。而且以上方法對于Unix也基本有效。
本文介紹了linux下的壓縮程式tar、gzip、gunzip、bzip2、bunzip2、compress、
uncompress、zip、unzip、rar、unrar等程式,以及如何使用它們對.tar、.gz、.tar.gz、.tgz、.bz2、.
tar.bz2、.Z、.tar.Z、.zip、.rar這10種壓縮文件進行操作。用tar建立存檔tar是“tapearchive”(磁帶存檔)的簡稱,它出現(xiàn)在還沒有軟盤驅(qū)動器、硬盤和光盤驅(qū)動器的計算機早期階段。那時軟件的發(fā)行和備份都需要大卷的磁帶,計算機上運行的頭幾個程序中就得有一個是磁帶的閱讀程序。隨著時間的推移,tar命令逐漸變?yōu)橐粋€將很多文件進行存檔的工具,目前許多用于Linux操作系統(tǒng)的程序就是打包為tar檔案文件的形式。tar命令的格式是:tar[option]<file>tar命令有很多參數(shù),利用f選項、設(shè)備或文件的名字可以指示tar命令將檔案置于特定的設(shè)備或文件中。當(dāng)為tar的檔案創(chuàng)建一個文件時,這個文件名的擴展通常是如果指定了一個目錄名,那么它所有的子目錄都會被包含在檔案之中。利用tar命令和f選項的格式如下所示:#taropionsfarchive-name.tardirectory-and-filenames要創(chuàng)建一個檔案應(yīng)使用c選項,與f選項一起,c選項會在設(shè)備或文件中創(chuàng)建檔案,應(yīng)在f選項的左邊輸入這一選項。在下例中,目錄mydir和它所有的子目錄都被存入文件myarch.tar中。#tarcfmyarch.tarmydir如果想要改動已經(jīng)存檔的目錄中的文件,可以使用u選項使tar更新檔案中的文件。tar比較每一個檔案文件與相應(yīng)用戶目錄中文件最近一次修改的時間,然后將上一次存檔之后又被修改過的文件拷貝到檔案文件中去。在用戶目錄中新創(chuàng)建的文件也會被添加到檔案文件中。在下面的例子中,用戶用mydir目錄中最近被修改或添加的文件來對myarch.tar文件進行更新。#tarufmyarch.tarmydir如果想查看在一個檔案中存儲著哪些文件,可以使用tar命令和t選項。下面命令列出所有存儲在myarch.tar檔案中的文件:#tartfmyarch.tar要將文件備份到一個特定的設(shè)備,只須把設(shè)備名作為檔案。在下面的例子中,用戶在/dev/fdo設(shè)備的軟盤中創(chuàng)建了一個檔案,并將mydir目錄中所有的文件都拷貝到檔案中。#tarcf/dev/fdomydir要恢復(fù)設(shè)備磁盤中的文件,可使用xf選項:#tarxf/dev/fdo如果所備份的文件大小超過設(shè)備可用的存儲器,比如軟盤,此時就可以創(chuàng)建一個使用多個標號的tar檔案。當(dāng)使用m選項向一個軟驅(qū)進行存檔時,tar命令在一張軟盤已滿的時候會提醒再放入一張新的軟盤。#tarcmf/dev/fdomydir要想恢復(fù)幾張盤中的檔案,只要將第一張軟盤放入軟驅(qū),然后輸入有x和m選項的tar命令。必要時會被提醒放入另外一張軟盤。#tarxmf/dev/fdotar操作不會對檔案文件實行壓縮操作。如果想壓縮檔案文件,可以指示tar激活gzip實用工具,在存檔之前對文件進行壓縮。利用z選項,tar在對文件存檔之前首先要使用gzip來壓縮文件。當(dāng)恢復(fù)文件時,同樣的Z選項將激活gzip對文件解壓。#tarczfmyarch.tarmydir值得注意的是,壓縮檔案中的單個文件和整體壓縮檔案是不同的。通常檔案文件是為了便于傳輸而把幾個文件組合成為一個tar文件。為了縮短傳輸時間,檔案應(yīng)當(dāng)越小越好,可以將其壓縮然后傳送壓縮后的版本。接收者可以對之解壓縮,然后恢復(fù)tar文件。在tar文件上使用gzip將會產(chǎn)生有.tar.gz擴展名的文件。擴展名.gz被加到被壓縮的gzip文件名之后。下面的例子創(chuàng)建了myarch.tar的一個壓縮的版本,它具有了.gz的擴展名。#gzipmyarch.tar
#ls
#myarch.tar.gztar命令雖然有非常多的參數(shù),但是使用起來并不困難,可以快速而又簡單地為任何需要的子目錄生成檔案文件。首先,我們來建立一個有三個文件的子目錄,再建立一個有另外三個文件的子目錄,如下所示:#mkdirmydir
#cdmydir
#touchfile1file2file3
#mkdirmydir2
#cdmydir2
#touchfile21file22file23
#cd../..
#treemydir
mydir
file1
file2
file3
mydir2
file21
file22
file23現(xiàn)在已經(jīng)有了一個子目錄和其中的文件,使用這個命令的c(生成)和f(文件)參數(shù)來生成一個tar檔案文件:#tarcfmydir.tarmydir
#ls-l*.tar
-rw-r--r--1bballusers10240Jan515:01mydir.tar請注意,原來的子目錄并沒有發(fā)生變化。在缺省的情況下,tar命令不會刪除原來的子目錄和文件。如果想看看命令執(zhí)行的過程,可以使用v參數(shù),如下所示:#tarcvfmydir.tarmydir
mydir/
mydir/file1
mydir/file2
mydir/file3
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file22
mydir/mydir2/file23tar命令在進行操作的時候,就會把正在添加到檔案文件中去的子目錄和文件的文件名顯示出來。使用w參數(shù),即交互參數(shù),這樣tar命令在執(zhí)行的過程當(dāng)中會詢問是否想加入每個文件。當(dāng)想有選擇地備份內(nèi)容不多的子目錄的時候,這樣就非常地方便,如下所示:#tarcwfmydir.tarmydir
addmydir?y
addmydir/file1?n
addmydir/file2?y
addmydir/file3?n
addmydir/mydir2?y
addmydir/mydir2/file21?y
addmydir/mydir2/file22?n
addmydir/mydir2/file23?y在上面的例子中,沒有把文件file1、file3和文件file22歸檔??梢允褂胻ar命令的t參數(shù)列出檔案文件中的內(nèi)容,f參數(shù)定義操作所使用的tar檔案文件,如下所示:#tartfmydir.tar
mydir/
mydir/file2
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file23需要注意的是,如果參數(shù)的順序放錯了,tar命令會顯示出錯信息并退出。下面就來看看如何來釋放整個的檔案文件或者其中的某一個文件。如果想釋放其中所有的文件,可以同時使用-x釋放參數(shù)和-f。為了了解命令執(zhí)行的過程,還可以加上-v參數(shù):#tarxvfmydir.tar
mydir/
mydir/file2
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file23如果只是想從檔案文件中釋放幾個文件的話,可以再次使用w參數(shù):#tarxvwfmydir.tar
extractmydir/?y
mydir
extractmydir/file2?y
mydir/file2
extractmydir/mydir2/?y
mydir/mydir2/
extractmydir/mydir2/file21?y
mydir/mydir2/file21
extractmydir/mydir2/file23?y
mydir/mydir2/file23上例表明查看了檔案文件,并交互地釋放了文件。如果只想從檔案文件中釋放某一個文件,可以在命令行中指定這個文件。作為示例,我先刪除了原始的mydir子目錄,然后使用一個空的子目錄進行如下操作:#tarxfmydir.tarmydir/mydir2/file23
#treemydir
mydir
--mydir2
--file23
1directory,1file注意,正如所看到的只有一個文件被釋放出來。雖然tar命令不會覆蓋整個的子目錄,但是它會覆蓋掉那些有著相同文件名的文件。值得一提的是,還可以使用其它程序,如BRU-2000或者taper腳本程序來備份系統(tǒng)或者選定的文件和子目錄。OpenLinux操作系統(tǒng)也可以通過cron日程安排來自動進行文件的歸檔整理工作。建立cpio檔案文件cpio命令可以從tar或者cpio檔案文件中拷入或者拷出文件。因為cpio命令和tar命令兼容,所以我這里不再詳細介紹它如何工作。但是這個命令具備一些tar命令沒有的功能,如下所示:◆支持cpio和tar兩種檔案文件格式;◆支持許多老式磁帶數(shù)據(jù)格式;◆能夠通過一個管道讀取文件的文件名。只有很少的Linux軟件包是以cpio格式發(fā)行的。如果對cpio命令的詳細情況感興趣的話,可以閱讀它的使用手冊。使用gzip壓縮文件gzip命令是用來壓縮文件的。它不僅可以用來壓縮大的、較少使用的文件以節(jié)省磁盤空間,還可以和tar命令一起構(gòu)成Linux操作系統(tǒng)中比較流行的壓縮文件格式。據(jù)統(tǒng)計,gzip命令對文本文件有60%~70%的壓縮率。gzip命令的格式是:gzip[option][file]gzip很容易使用。如果想壓縮某個文件或者磁帶檔案文件,可輸入下面的內(nèi)容:#gzipmydir.tar在缺省的狀態(tài)下,gzip會壓縮文件、再加上一個.gz擴展名,然后刪除掉原來的文件。如果想解壓縮文件,可以使用gzip的對應(yīng)程序命令gunzip或者gzip命令的-d解壓縮參數(shù)。但是必須保證這個用于解壓縮的文件有.gz(或者.Z、-gz、.z、-z、或者_z)擴展名,否則gzip命令和gunzip命令都會顯示出錯信息。如果想使用自己的擴展名,可以使用-S后綴參數(shù),如下所示:#gzip-S.gzippedmydir.targzip還可以處理用zip命令、compress命令和pack命令壓縮的文件包。如果想在壓縮或者解壓縮的過程中看到更多的信息,可以使用-l列清單參數(shù)看到文件在被壓縮或解壓縮的時候的文件長度。在前一個例子中,壓縮完子目錄mydir之后,可以使用gzip命令按照下面的方法得到有關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《卓越執(zhí)行力》課件2
- 《領(lǐng)料申請單模板》課件
- 教導(dǎo)處范文課堂教學(xué)大賽實施方案
- 燈珠客戶合作協(xié)議
- 異地戀協(xié)議書復(fù)制
- 《高等數(shù)學(xué)課件:微積分的發(fā)展歷程》
- 《心血管影像解析》課件
- 《腦部斷層解剖》課件
- 《營養(yǎng)強化劑-課件中的補虛藥物》
- 《營養(yǎng)健康》課件2
- 高層小區(qū)安全培訓(xùn)
- 2025-2030年中國電加熱蓄熱系統(tǒng)項目投資可行性研究分析報告
- 【+初中語文++】第23課蛟龍?zhí)胶Un件+統(tǒng)編版語文七年級下冊
- 農(nóng)村三資管理課件
- 敏捷跨文化團隊協(xié)作-全面剖析
- 2025年3月29日全國事業(yè)單位聯(lián)考A類《職測》真題及答案
- 八年級勞動教育測試題目及答案
- 2025年新思想概論考試題及答案
- 通信施工培訓(xùn)課件
- 球團焙燒工(高級)技能鑒定備考試題庫-上(單選、多選題)
- 知識寶庫中的寶藏知識產(chǎn)權(quán)的投資潛力和實踐路徑探索
評論
0/150
提交評論