Linux學習筆記 tar和zip命令》

2021-07-06 04:08:43 字數 4503 閱讀 1353

linuxtar 命令詳解

tar [-cxtzjvfppn] 檔案與目錄 ....

引數:-c :建立乙個壓縮檔案的引數指令(create 的意思);

-x :解開乙個壓縮檔案的引數指令!

-t :檢視 tarfile 裡面的檔案!

特別注意,在引數的下達中, c/x/t 僅能存在乙個!不可同時存在!

因為不可能同時壓縮與解壓縮。

-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?

-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?

-v :壓縮的過程中顯示檔案!這個常用,但不建議用在背景執行過程!

-f :使用檔名,請留意,在 f 之後要立即接檔名喔!不要再加引數!

例如使用『 tar -zcvfp tfile sfile』就是錯誤的寫法,要寫成

『 tar -zcvpf tfile sfile』才對喔!

-p :使用原檔案的原來屬性(屬性不會依據使用者而變)

-p :可以使用絕對路徑來壓縮!

-n :比後面接的日期(yyyy/mm/dd)還要新的才會被打包進新建的檔案中!

--exclude file:在壓縮的過程中,不要將 file 打包!

範例:範例一:將整個 /etc 目錄下的檔案全部打包成為 /tmp/etc.tar

[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==僅打包,不壓縮!

[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包後,以 gzip 壓縮

[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包後,以 bzip2 壓縮

# 特別注意,在引數 f 之後的檔案檔名是自己取的,我們習慣上都用 .tar 來作為辨識。

# 如果加 z 引數,則以 .tar.gz 或 .tgz 來代表 gzip 壓縮過的 tar file ~

# 如果加 j 引數,則以 .tar.bz2 來作為附檔名啊~

# 上述指令在執行的時候,會顯示乙個警告訊息:

# 『tar: removing leading `/" from member names』那是關於絕對路徑的特殊設定。

範例二:查閱上述 /tmp/etc.tar.gz 檔案內有哪些檔案?

[root@linux ~]# tar -ztvf /tmp/etc.tar.gz

# 由於我們使用 gzip 壓縮,所以要查閱該 tar file 內的檔案時,

# 就得要加上 z 這個引數了!這很重要的!

範例三:將 /tmp/etc.tar.gz 檔案解壓縮在 /usr/local/src 底下

[root@linux ~]# cd /usr/local/src

[root@linux src]# 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@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd

# 我可以透過 tar -ztvf 來查閱 tarfile 內的檔名稱,如果單只要乙個檔案,

# 就可以透過這個方式來下達!注意到! etc.tar.gz 內的根目錄 / 是被拿掉了!

範例五:將 /etc/ 內的所有檔案備份下來,並且儲存其許可權!

[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc

# 這個 -p 的屬性是很重要的,尤其是當您要保留原本檔案的屬性時!

範例六:在 /home 當中,比 2005/06/01 新的檔案才備份

[root@linux ~]# tar -n "2005/06/01" -zcvf home.tar.gz /home

範例七:我要備份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

範例八:將 /etc/ 打包後直接解開在 /tmp 底下,而不產生檔案!

[root@linux ~]# cd /tmp

[root@linux tmp]# tar -cvf - /etc | tar -xvf -

# 這個動作有點像是 cp -r /etc /tmp 啦~依舊是有其有用途的!

# 要注意的地方在於輸出檔變成 - 而輸入檔也變成 - ,又有乙個 | 存在~

# 這分別代表 standard output, standard input 與管線命令啦!

# 這部分我們會在 bash shell 時,再次提到這個指令跟大家再解釋囉!

linux zip 命令詳解

-$ 儲存第乙個被壓縮檔案所在磁碟的卷冊名稱。

-《壓縮效率》 壓縮效率是乙個介於1-9的數值。

linux unzip 命令詳解

功能說明:解壓縮zip檔案

語 法:unzip [-cflptuvz][-agcjlmnoqsvx][-p 《密碼》][.zip檔案][檔案][-d 《目錄》][-x 《檔案》] 或 unzip [-z]

補充說明:unzip為.zip壓縮檔案的解壓縮程式。

參 數:

-c 將解壓縮的結果顯示到螢幕上,並對字元做適當的轉換。

-f 更新現有的檔案。

-l 顯示壓縮檔案內所包含的檔案。

-p 與-c引數類似,會將解壓縮的結果顯示到螢幕上,但不會執行任何的轉換。

-t 檢查壓縮檔案是否正確。

-u 與-f引數類似,但是除了更新現有的檔案外,也會將壓縮檔案中的其他檔案解壓縮到目錄中。

-v 執行是時顯示詳細的資訊。

-z 僅顯示壓縮檔案的備註文字。

-a 對文字檔案進行必要的字元轉換。

-b 不要對文字檔案進行字元轉換。

-c 壓縮檔案中的檔名稱區分大小寫。

-j 不處理壓縮檔案中原有的目錄路徑。

-l 將壓縮檔案中的全部檔名改為小寫。

-m 將輸出結果送到more程式處理。

-n 解壓縮時不要覆蓋原有的檔案。

-o 不必先詢問使用者,unzip執行後覆蓋原有檔案。

-p《密碼》 使用zip的密碼選項。

-q 執行時不顯示任何資訊。

-s 將檔名中的空白字元轉換為底線字元。

-v 保留vms的檔案版本資訊。

-x 解壓縮時同時回存檔案原來的uid/gid。

[.zip檔案] 指定.zip壓縮檔案。

[檔案] 指定要處理.zip壓縮檔案中的哪些檔案。

-d《目錄》 指定檔案解壓縮後所要儲存的目錄。

-x《檔案》 指定不要處理.zip壓縮檔案中的哪些檔案。

-z unzip -z等於執行zipinfo指令

範例:

zip命令可以用來將檔案壓縮成為常用的zip格式。unzip命令則用來解壓縮zip檔案。

1. 我想把乙個檔案abc.txt和乙個目錄dir1壓縮成為yasuo.zip:

# zip -r yasuo.zip abc.txt dir1

# unzip yasuo.zip

3.我當前目錄下有abc1.zip,abc2.zip和abc3.zip,我想一起解壓縮它們:

# unzip abc\?.zip

注釋:?表示乙個字元,如果用*表示任意多個字元。

4.我有乙個很大的壓縮檔案large.zip,我不想解壓縮,只想看看它裡面有什麼:

# unzip -v large.zip

# unzip -t large.zip

# unzip -j music.zip

**:------

說明:tar這個命令並沒有壓縮的功能,它只是乙個打包的命令。tar.gz與tar.bz2都是在tar命令中呼叫了別的壓縮命令實現了乙個壓縮的功能,實際是實行乙個先打包後壓縮的過程,而且,tar.gz與tar.bz2只是乙個公認的乙個通行字尾而已,並不是一種壓縮格式(真正實現壓縮的是gzip與bzip2,這是後話。),tar.gz在很多時候,也會被簡寫成tgz。

zip可能是目前使用得最多的文件壓縮格式。它最大的優點就是在不同的作業系統平台,比如linux, windows以及mac os,上使用。缺點就是支援的壓縮率不是很高,而tar.gz和tar.gz2在壓縮率方面做得非常好。

Linux壓縮包處理tar和rar及zip

tar cvf dir.tar dir 壓縮包 tar xvf dir.tar 解壓包z是一種壓縮演算法 tar zcvf dir.tar.gz dir 壓縮包 tar zxvf dir.tar.gz 解壓包 tar zxvf dir.tar.gz yaojun test 解壓到指定目錄j是一種壓縮...

linux學習筆記 tar命令總結

首先,看下man tar name tar the gnu version of the tape archiver tar utility synopsis tar options operations a catenate concatenate c create 打包檔案 d diff com...

Linux命令學習 tar

功能tar命令用來打包,解包和壓縮。語法tar 主選項 輔選項 檔案或者目錄 選項 3.1 主選項 c建立新的檔案檔案 打包 x從檔案檔案中還原檔案 解包 t列出檔案檔案的內容 在引數中,c x t有且僅有乙個存在,不能同時存在 3.2 輔選項 a將tar檔案新增到已存在的檔案檔案 b設定區塊大小 ...