6.6 tar打包

tar目錄概要

  • tar -cvf 123.tar 123
  • tar -cvf aming.tar 1.txt 123
  • tar -xvf aming.tar
  • tar -tf aming.tar
  • tar -cvf aming.tar --exclude 1.txt --exclude 2 123

網絡小知識

  • 帶寬的單位:比特(Byte)
    • 1Byte=8bit;1兆字節=8兆比特
  • 100兆網卡跑滿,應該是12.5兆字節每秒(這是傳輸速度)——>這是理論值

tar打包目錄

  • 打包對於文件大小無太大變化,可是多少會存在一些微小的變化
    • 若是每一個小文件小於4K(小於一個塊的大小),文件只有1K、2K、3K(未超過4K),有一萬個相似的文件,就須要4000K(40兆),但打包這些小文件就會相加,最後有可能只有十幾兆
  • tar -cvf hf.tar hf/ 把hf目錄打包成hf.tar,其中 / 符號可省略
    • c 表示建立,v 表示可視化,看到建立的過程,f 後跟tar打包的名稱——>v可省略,但cf必須有
[root@hf-01 d6z]# ls
1.txt  1.txt.zip  4.txt  5.txt  8.xt  hafe.zip  hf
[root@hf-01 d6z]# tar -cvf hf.tar hf/
hf/
hf/han/
hf/han/hanfeng/
hf/han/hanfeng/66.txt
hf/han/hanfeng/1.txt
hf/han/wu.txt
hf/1.txt
[root@hf-01 d6z]#
  • 若已經打包,再次去從新打包,會直接覆蓋以前的打包文件,而且沒有任何提示
[root@hf-01 d6z]# tar -cf hf.tar hf/
[root@hf-01 d6z]# ls
1.txt  1.txt.zip  4.txt  5.txt  8.xt  hafe.zip  hf  hf.tar
[root@hf-01 d6z]#

tar解包

  • tar -xvf hf.tar 把hf.tar包解開——>默認覆蓋以前的物件,無任何提示
[root@hf-01 d6z]# tar -xvf hf.tar
hf/
hf/han/
hf/han/hanfeng/
hf/han/hanfeng/66.txt
hf/han/hanfeng/1.txt
hf/han/wu.txt
hf/1.txt
[root@hf-01 d6z]# ls
1.txt  1.txt.zip  4.txt  5.txt  8.xt  hafe.zip  hf  hf.tar
  • 解包後會發現打包的的依舊存在

tar打包目錄和文件

  • tar -cvf han.tar hf/ 1.txt 4.txt 把文件和目錄一塊兒打包成han.tar
[root@hf-01 d6z]# tar -cvf han.tar hf/ 1.txt 4.txt
hf/
hf/han/
hf/han/hanfeng/
hf/han/hanfeng/66.txt
hf/han/hanfeng/1.txt
hf/han/wu.txt
hf/1.txt
1.txt
4.txt
[root@hf-01 d6z]# ls
1.txt  1.txt.zip  4.txt  5.txt  8.xt  hafe.zip  han.tar  hf  hf.tar

tar查看打包文件中的文件列表

  • tar -tf han.tar 查看han.tar中的文件列表
[root@hf-01 d6z]# tar -tf han.tar
hf/
hf/han/
hf/han/hanfeng/
hf/han/hanfeng/66.txt
hf/han/hanfeng/1.txt
hf/han/wu.txt
hf/1.txt
1.txt
4.txt

tar過濾指定的文件,不去打包它們

  • tar -cvf han.tar --exclude hanfeng hf/ 1.txt 4.txt 過濾hanfeng文件目錄,而後打包hf、1.txt、4.txt文件成han.tar
    • --exclude 後面跟過濾到的文件或目錄
    • 選項 f 後,必須跟tar包的名稱
    • 重複的打包名稱,會直接覆蓋掉以前的打包文件
[root@hf-01 d6z]# tar -cvf han.tar --exclude hanfeng hf/ 1.txt 4.txt
hf/
hf/han/
hf/han/wu.txt
hf/1.txt
1.txt
4.txt
  • 過濾掉文件、目錄和*.txt文件
    • 過濾"*.txt"文件必須加""
    • --exclude支持過個文件過濾
[root@hf-01 d6z]# tar -cvf han.tar --exclude hanfeng --exclude wu.txt --exclude "*.txt" hf/ 1.txt 4.txt
hf/
hf/han/
相關文章
相關標籤/搜索