linux文件壓縮
tar[-j|-z][cv][-f建立的檔案名]filename...《==打包與壓縮
tar[-j|-z][tv][-f建立的檔案名]《==查看檔案
tar[-j|-z][xv][-f建立的檔案名][-C目錄]《==解壓縮
選項與參數:
-c:建立打包檔案,可搭配-v來觀察過程中被打包的檔案名(filename)
-t:查看打包檔案的內容含有那些檔案
-x:解壓縮的功能,可以搭配-C在特定的目錄解開;-c、-t、-x不能同時出現在一串指令列中。
-j:透過bzip2的支持進行壓縮/解壓縮:此時檔案名最好為*.tar.bz2
-z:透過gzip的支持進行壓縮/解壓縮:此時檔案名最好為*.tar.gz
-v:在壓縮/解壓縮的過程中,將正在處理文件名顯示出來
-ffilename:-f後面要立刻接被處理的檔案名!建議-f單獨寫一個選項
-C目錄:這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項
tar命令是Unix/Linux系統中非常常用的備份文件方法,它的使用許可權是所有用戶。
tar命令語法:
tar[主選項+輔選項]文件名或目錄。使用該命令時,主選項是必須要有的,它告訴tar命令要做什麼,輔選項是輔助使用的,可以選用。
主選項:
-c創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。相當於打包。
-x從檔案文件中釋放文件。相當於拆包。
-t列出檔案文件的內容,查看已經備份了哪些文件。
-r把要存檔的文件追加到檔案文件的末尾。例如用戶已經做好備份文件,又發現還有一個目錄或是一些文件忘記備份了,這時可以使用該選項,將忘記的目錄或文件追加到備份文件中
特別注意,主選項只能存在一個,c/x/t/r僅能存在一個!不可同時存在!因為不可能同時壓縮與解壓縮。
輔助選項:
-z:用gzip程序來壓縮或解壓縮文件,加上該選項後可以將檔案文件進行壓縮,但還原時也一定要使用該選項進行解壓縮。文件格式一般為xx.tar.gz或xx.tgz
-j:使用bzip2程序進行文件的壓縮或解壓,文件格式一般為xx.tar.bz2
-v:壓縮的過程中顯示文件!這個常用
-f:使用檔名,請留意,在f之後要立即接檔名!不要再加其他參數!
-p:使用原文件的原來屬性(屬性不會依據使用者而變)
-w每一步都要求確認。
--excludeFILE:在壓縮的過程中,不要將FILE打包!
範例:
範例一:將整個/etc目錄下的文件全部打包成/tmp/etc.tar
[root@ubuntu~]#tar-cvf/tmp/etc.tar/etc<==僅打包,不壓縮!
[root@ubuntu~]#tar-zcvf/tmp/etc.tar.gz/etc<==打包後,以gzip壓縮
[root@ubuntu~]#tar-jcvf/tmp/etc.tar.bz2/etc<==打包後,以bzip2壓縮
#特別注意,在參數f之後的文件檔名是自己取的,我們習慣上都用.tar來作為辨識。
#如果加z參數,則以.tar.gz或.tgz來代表gzip壓縮過的tarfile
#如果加j參數,則以.tar.bz2來代表bzip2壓縮過的tarfile
#上述指令在執行的時候,會顯示一個警告訊息:
#『tar:Removingleading`/"frommembernames』那是關於絕對路徑的特殊設定。
範例二:查看上述/tmp/etc.tar.gz文件內有那些被壓縮的文件
[root@ubuntu~]#tar-ztvf/tmp/etc.tar.gz
#由於我們使用gzip壓縮,所以要查閱該tarfile內的文件時,
#就得要加上z這個參數了!這很重要的!
範例三:將/tmp/etc.tar.gz文件解壓縮在/usr/local/src底下
[root@linux~]#cd/usr/local/src
[root@linuxsrc]#tar-zxvf/tmp/etc.tar.gz
#在預設的情況下,我們可以將壓縮檔在任何地方解開的!以這個範例來說
#我先將工作目錄變換到/usr/local/src底下,並且解開/tmp/etc.tar.gz
#則解開的目錄會在/usr/local/src/etc,另外,如果您進入/usr/local/src/etc
#則會發現,該目錄下的文件屬性與/etc/可能會有所不同喔!
範例四:在/tmp底下,我只想要將/tmp/etc.tar.gz內的etc/passwd解開而已
[root@linux~]#cd/tmp
[root@linuxtmp]#tar-zxvf/tmp/etc.tar.gzetc/passwd
#我可以透過tar-ztvf來查閱tarfile內的文件名稱,如果單只要一個文件,
#就可以透過這個方式來下達!注意到!etc.tar.gz內的根目錄/是被拿掉了!
範例五:我要備份/home,/etc,但不要/home/dmtsai
[root@linux~]#tar--exclude/home/dmtsai-zcvfmyfile.tar.gz/home/*/etc
另外:tar命令的C參數
$tar-cvffile2.tar/home/usr2/file2
tar:Removingleading'/'frommembersnames
home/usr2/file2
該命令可以將/home/usr2/file2文件打包到當前目錄下的file2.tar中,需要注意的是:使用絕對路徑標識的源文件,在用tar命令壓縮後,文件名連同絕對路徑(這里是home/usr2/,根目錄'/'被自動去掉了)一並被壓縮進來。使用tar命令解壓縮後會出現以下情況:
$tar-xvffile2.tar
$ls
………home…………
解壓縮後的文件名不是想像中的file2,而是home/usr2/file2。
$tar-cvffile2.tar-C/home/usr2file2
該命令中的-Cdir參數,將tar的工作目錄從當前目錄改為/home/usr2,將file2文件(不帶絕對路徑)壓縮到file2.tar中。注意:-Cdir參數的作用在於改變工作目錄,其有效期為該命令中下一次-Cdir參數之前。
使用tar的-Cdir參數,同樣可以做到在當前目錄/home/usr1下將文件解壓縮到其他目錄,例如:
$tar-xvffile2.tar-C/home/usr2
而tar不用-Cdir參數時是無法做到的:
$tar-xvffile2.tar/home/usr2
tar:/tmp/file:Notfoundinarchive
tar:
② LINUX 下如何壓縮ZIP文件
gzip可以
③ linux文件壓縮命令
tar(tapearchive)
功能說明:備份文件。
語 法:tar[-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b<區塊數目>][-C<目的目錄>][-f<備份文件>][-F<Script文件>][-K<文件>][-L<媒體容量>][-N<日期時間>][-T<範本文件>][-V<卷冊名稱>][-X<範本文件>][-<設備編號><存儲密度>][--after-date=<日期時間>][--atime-preserve][--backuup=<備份方式>][--checkpoint][--concatenate][--confirmation][--delete][--exclude=<範本樣式>][--force-local][--group=<群組名稱>][--help][--ignore-failed-read][--new-volume-script=<Script文件>][--newer-mtime][--no-recursion][--null][--numeric-owner][--owner=<用戶名稱>][--posix][--erve][--preserve-order][--preserve-permissions][--record-size=<區塊數目>][--recursive-unlink][--remove-files][--rsh-command=<執行指令>][--same-owner][--suffix=<備份字尾字元串>][--totals][--use-compress-program=<執行指令>][--version][--volno-file=<編號文件>][文件或目錄...]
故選擇A
難道樓主沒學過linux
-x或--extract或--get從備份文件中還原文件。
-v或--verbose顯示指令執行過程。
-z或--gzip或--ungzip通過gzip指令處理備份文件。
-f<備份文件>或--file=<備份文件>指定備份文件。
-C<目的目錄>或--directory=<目的目錄>切換到指定的目錄。
這樣解釋行嗎?
④ linux怎麼壓縮文件
tar命令可以用來壓縮打包單文件、多個文件、單個目錄、多個目錄。
常用格式:
單個文件壓縮打包 tar czvf my.tar file1
多個文件壓縮打包 tar czvf my.tar file1 file2,...
單個目錄壓縮打包 tar czvf my.tar dir1
多個目錄壓縮打包 tar czvf my.tar dir1 dir2
解包至當前目錄:tar xzvf my.tar
⑤ linux下如何解壓和壓縮文件
Linux下自帶了一個unzip的程序可以解壓縮文件,解壓命令是:unzip filename.zip
也提供了一個zip程序壓縮zip文件,命令是 zip filename.zip files ,會將files壓縮到filename.zip
⑥ linux中怎麼壓縮一個文件夾
1、將/home/wwwroot/xahot/ 這個目錄下所有文件和文件夾打包為當前目錄下的xahot.zip
zip –q –r xahot.zip /home/wwwroot/xahot
4、然後就完成了。
⑦ linux下壓縮10萬個文件夾15萬個文件,速度最快的方法
這個你就打包,不要加壓縮演算法了。
tar -cvf zipdb.tar yourfolder/
⑧ linux 怎麼壓縮某個目錄下的所有文件
比如你想把data目錄下所有文件壓縮打包到/tmp目錄下,並且把壓縮包命名為a.tar.gz。可以這樣操作
tar -zcvf /tmp/a.tar.gz data/
然後你進到/tmp目錄下看下是否打包成功,有這個a.tar.gz,並檢查是是否打包完整。
cd /tmp
tar -tf a.tar.gz
⑨ LINUX 如何壓縮ZIP文件
你說的是gzip格式吧,linux不支持壓縮成zip的,如果是gzip格式的壓縮命令為
#tar -z 壓縮目錄或文件名
⑩ 怎樣在linux下對目錄進行壓縮生成gz文件
在linux下,使用gzip命令可以對目錄壓縮生成gz文件,具體步驟如下:
1、首先,連接相應linux主機,進入到linux命令行狀態下,等待輸入shell指令。