Linux命令分析 tar

2021-08-09 06:00:42 字數 3011 閱讀 4059

用法:tar   選項...   檔案...

tar命令後面至少要接乙個引數,引數後指定要處理的檔案或目錄,如果指定乙個目錄則該目錄下所有子目錄及檔案都將被打包

選項:-a   --catenate,--concatenate   將新生成的存檔新增到現有存檔檔案

-c   --create   建立新的存檔檔案

-d   --diff,--compare   沒什麼用

--delete   刪除tar包中的某個檔案

-t   --list   列出存檔中檔案的目錄

-u   --update   僅將較新的檔案附加到tar檔案

-x   --extract,--get   從tar包中展開檔案

注意:c,x,t三個引數同時只能出現乙個

-f   --file=archive   指定要處理的存檔檔案,在有多個選項時,f要放在最後,後面要立刻接目標存檔檔案

-j   --bzip2   呼叫bzip2命令壓縮tar包

-j   --xz   呼叫xz命令壓縮tar包

-p   --preserve-permissions   展開並保留所有檔案資訊(root使用者預設)

-v   --verbose   詳細顯示處理的檔案

-z   --gzip   呼叫gzip命令壓縮tar包

-g   --listed-inccremental=file   後接新的gnu格式的增量備份,常用於做快照

-g   --incremental   處理原有的增量備份

--level=number   建立增量存檔時指定dump級別

-n   --seek   存檔具有seekable屬性

-k   --keep-old-files   儲存現有檔案,從存檔中展開時不覆蓋,作為錯誤處理

--keep-newer-files   不覆蓋比存檔中更新的檔案

--no-overwrite-dir   不覆蓋現有目錄

--remove-files   在檔案新增到存檔後刪除原檔案

-w   寫入存檔後進行校驗

-o   將檔案展開到標準輸出

-m   檔案中恢復的檔案,不更改mtime

-force-local   強制使用本地存檔,即使存在轉殖

-m   建立多個存檔,存放在不同卷上

-a   --auto-compress   通過指定tar檔案的字尾自動判斷要呼叫哪個命令來壓縮

-z   用compress命令壓縮

-c   --directory=dir   轉到指定目錄

-h   跟蹤動態鏈結,打包的是所指向的檔案

-n   --newer=date-or-file   只儲存時間較新的檔案

-p   --absolute-names   不去掉檔名前面的/

-t   --files-from=file   從file中獲得要展開或建立的檔名

-x   --exclude-from=file   從file中獲得要排除的檔名

-r   顯示存檔中每個檔案的塊資訊

-w   每個操作都要確認

典型用法:

1.將目錄下的檔案打包

tar   -cvf   /tmp/backup.tar   /var/log   #   將/var/log下的日誌全部打包到/tmp/backup.tar檔案裡,不壓縮

tar   -zcvf   /tmp/backup.tar.gz   /var/log   #   打包後,用gzip壓縮

tar   -jcvf   /tmp/backup.tar.bz2   /var/log   #   打包後,用bzip2壓縮

2.將多個檔案打包成乙個tar檔案

tar   -cvf   backup.tar   檔案1   檔案2   檔案3...

tar   --exclude   /var/log/maillog   -cvf   backup.tar   /var/log/*   /etc/passwd   #   備份日誌和使用者名單到backup.tar,但排除mail日誌

3.檢視tar包內有哪些檔案

tar   -tvf   backup.tar

tar   -ztvf   backup.tar.gz

4.將tar包解壓縮

tar   -xvf   /tmp/backup.tar   -c   /root   #   將tar包展開到指定目錄,如不指定則到當前目錄

tar   -zxvf   /tmp/backup.tar.gz

tar   -zxvf   /tmp/backup.tar.gz   syslog   #   只將tar包中的syslog這乙個檔案解壓出來

5.刪除tar包中的某個檔案

tar   --delete   -f   /tmp/backup.tar   maillog   #   將tar包中的maillog刪除,但此--delete不能刪除壓縮過的tar包中的檔案

6.將/etc目錄裡的所有檔案備份下來,並儲存許可權

tar   -zxvpf   /tmp/etc.tar.gz   /etc

7.只備份時間較新的檔案

tar   -n   '2018/01/01'   -zcvf   /etc/init.d

8.更改tar包

tar   -rvf   backup.tar   /etc/sysconfig   #   將sysconfig檔案新增到backup.tar裡

tar   -xvf   backup.tar   sysconfig   #   將sysconfig檔案取出來,tar包後面不接檔名則解出整個tar包的檔案

9.建立增量快照

第一次對test目錄做完整備份,同時-g引數做備份快照

隨後在目錄下新建檔案test/4,修改/test/1的內容

再根據backup.snap這個備份快照對test目錄做增量備份,備份檔案為backup1.tar.gz,該檔案裡記錄的是第一次完整備份後的改動

Linux 命令 tar 命令

tar abcdgghiklmmoopprrsstuuvwwxzz b 區塊數目 c 目的目錄 f 備份檔案 f date 日期時間 atime preserve backuup 備份方式 checkpoint concatenate confirmation delete exclude 範本樣式...

Linux命令 tar命令

1.命令原型 tar 必要引數 選擇引數 檔案 2.詳解 這個五個是獨立命令,壓縮和解壓都要用到其中乙個,可以和別的命令連用但只能用其中乙個,下面的引數是根據需要在壓縮 下面的 f引數是必須的 1.將目錄test的檔案打成乙個名為test.tar的包。c是表示產生新的包,f指定包的檔名。tar cv...

Linux命令大全 tar命令

範例二 查閱上述 tmp etc.tar.gz 檔案內有哪些檔案?root linux tar ztvf tmp etc.tar.gz 由於我們使用 gzip 壓縮,所以要查閱該 tar file 內的檔案時,就得要加上 z 這個引數了!這很重要的!範例三 將 tmp etc.tar.gz 檔案解壓...