linux命令之tar 解壓 壓縮


tar

tar(全稱:tape archive )命令用於備份文件。tar 是用來創建或者還原備份文件的工具程序,它可以加入,解開備份文件內的文件。tar linux說明

  • 語法
tar [主選項 + 輔選項] 文件或目錄

使用該命令時,主選項必須有,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。

主選項:一條命令下面的5個參數只能有一個,不能同時存在

-c: --create 新建一個壓縮文檔,即打包

-x: --extract,--get解壓文件

-t: --list,查看壓縮文檔里的所有內容

-r:--append 向壓縮文檔里追加文件

-u:--update 更新原壓縮包中的文件

輔助選項:

-z:是否同時具有gzip的屬性?即是否需要用gzip壓縮或解壓?一般格式為xxx.tar.gz或xx.tgz

-j:是否同時具有bzip2的屬性?即是否需要用bzip2壓縮或解壓?一般格式為xx.tar.bz2

-v:顯示操作過程!這個參數很常用

-f:使用文檔名,注意,在f之后要立即接文檔名,不要再加其他參數!

-C:切換到指定目錄

--exclude FILE:在壓縮過程中,不要將FILE打包

  • 實例
  1. 打包
$ tar -cvf img.tar img1 img2 
  1. 不解壓查看
$ tar -tvf img.tar
  1. 解壓
$ tar -xvf ./img.tar
  1. 只解壓某個目錄
$ tar -xvf ./img.tar img1
  1. 更新壓縮包

給img1文件下新建一個文件img3.txt,然后更新img.tar

$ tar -cvf img.tar img1 img2
# 給img1增加了一張照片,現在用下面命令更新img.tar
$ tar -uvf img.tar img1
  1. 追加
$ tar -cf img.tar img1 img2
# img.tar里追加一個文件夾img3
$ tar -rf img.tar img3
  1. -C 參數

-C 參數非常有用,改變文件目錄,多層級時使用。 -C, --directory=DIR ( change to directory DIR )

使用了-C 參數改變目錄為 -C 后面的目錄,不管是在打包還是解壓都很有用。

語法:tar temp.tar -C fileDir file

$ cd temp
$ ls
img1  img2  img3
$ tar -cvf img.tar temp/*
# 這樣打包會將temp目錄也打包進去,使用下面帶有-C參數的命令可以去掉路徑信息
$ tar -cvf img.tar -C temp .

解壓 img.tar 到當前目錄下的 temp 目錄

$ tar -xvf img.tar -C temp

附錄:

   $ tar -cvf image.tar /home/usr/image
   tar: Removing leading '/' from members names
   /home/usr/image
   該命令可以將/home/usr/image文件打包到當前目錄下的image.tar中,需要注意的是:使用絕對路徑標識的源文件,在用tar命令壓縮后,文件名連同絕對路徑(這里是home/usr/,根目錄'/'被自動去掉了)一並被壓縮進來。使用tar命令解壓縮后會出現以下情況:
   $ tar -xvf image.tar
   解壓縮后的文件名不是想象中的image,而是home/usr/image。

   $ tar -cvf image.tar -C /home/usr/ image

   該命令中的-C dir參數,將tar的工作目錄從當前目錄改為/home/usr/,將image文件(不帶絕對路徑)壓縮到image.tar中。注意:-C dir參數的作用在於改變工作目錄,其有效期為該命令中下一次-C dir參數之前。

   使用tar的-C dir參數,同樣可以做到在當前目錄/root下將文件解壓縮到其他目錄,例如:
   $ tar -xvf image.tar -C /home/user
   而tar不用-C dir參數時是無法做到的:
   $ tar -xvf image.tar /root
   tar: /tmp/file: Not found in archive
   tar: Error exit delayed from previous errors

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM