日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux下的tar归档及解压缩功能详解

發布時間:2025/4/16 linux 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux下的tar归档及解压缩功能详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Linux下的tar歸檔及解壓縮功能詳解

  • 一、Linux下解壓縮工具
  • 二、gzip工具的使用方法
  • 三、其他解壓縮工具

一、Linux下解壓縮工具

二、gzip工具的使用方法

三、其他解壓縮工具

一、Linux下解壓縮工具
1.tar命令
Unix和類Unix系統上的壓縮打包工具,可以將多個文件合并為一個文件,打包后的文件后綴亦為“tar”。tar文件格式已經成為POSIX標準,最初是POSIX.1-1988,當前是POSIX.1-2001。本程序最初的設計目的是將文件備份到磁帶上(tape archive),因而得名tar。
tar命令是Unix/Linux系統中備份文件的可靠方法,幾乎可以工作于任何環境中,它的使用權限是所有用戶。最常用的打包命令是 tar,使用 tar 程序打出來的包我們常稱為 tar 包,tar 包文件的命令通常都是以 .tar 結尾的。生成 tar 包后,就可以用其它的程序來進行壓縮了,所以首先就來講講 tar 命令的基本用法。

2.tar的語法及參數

參數:-A或--catenate 新增文件到已存在的備份文件。 -b<區塊數目>或--blocking-factor=<區塊數目> 設置每筆記錄的區塊數目,每個區塊大小為12Bytes。 -B或--read-full-records 讀取數據時重設區塊大小。 -c或--create 建立新的備份文件。 -C<目的目錄>或--directory=<目的目錄> 切換到指定的目錄。 -d或--diff或--compare 對比備份文件內和文件系統上的文件的差異。 -f<備份文件>或--file=<備份文件> 指定備份文件。 -F<Script文件>或--info-script=<Script文件> 每次更換磁帶時,就執行指定的Script文件。 -g或--listed-incremental 處理GNU格式的大量備份。 -G或--incremental 處理舊的GNU格式的大量備份。 -h或--dereference 不建立符號連接,直接復制該連接所指向的原始文件。 -i或--ignore-zeros 忽略備份文件中的0 Byte區塊,也就是EOF。 -k或--keep-old-files 解開備份文件時,不覆蓋已有的文件。 -K<文件>或--starting-file=<文件> 從指定的文件開始還原。 -l或--one-file-system 復制的文件或目錄存放的文件系統,必須與tar指令執行時所處的文件系統相同,否則不予復制。 -L<媒體容量>或-tape-length=<媒體容量> 設置存放每體的容量,單位以1024 Bytes計算。 -m或--modification-time 還原文件時,不變更文件的更改時間。 -M或--multi-volume 在建立,還原備份文件或列出其中的內容時,采用多卷冊模式。 -N<日期格式>或--newer=<日期時間> 只將較指定日期更新的文件保存到備份文件里。 -o或--old-archive或--portability 將資料寫入備份文件時使用V7格式。 -O或--stdout 把從備份文件里還原的文件輸出到標準輸出設備。 -p或--same-permissions 用原來的文件權限還原文件。 -P或--absolute-names 文件名使用絕對名稱,不移除文件名稱前的"/"號。 -r或--append 新增文件到已存在的備份文件的結尾部分。 -R或--block-number 列出每個信息在備份文件中的區塊編號。 -s或--same-order 還原文件的順序和備份文件內的存放順序相同。 -S或--sparse 倘若一個文件內含大量的連續0字節,則將此文件存成稀疏文件。 -t或--list 列出備份文件的內容。 -T<范本文件>或--files-from=<范本文件> 指定范本文件,其內含有一個或多個范本樣式,讓tar解開或建立符合設置條件的文件。 -u或--update 僅置換較備份文件內的文件更新的文件。 -U或--unlink-first 解開壓縮文件還原文件之前,先解除文件的連接。 -v或--verbose 顯示指令執行過程。 -V<卷冊名稱>或--label=<卷冊名稱> 建立使用指定的卷冊名稱的備份文件。 -w或--interactive 遭遇問題時先詢問用戶。 -W或--verify 寫入備份文件后,確認文件正確無誤。 -x或--extract或--get 從備份文件中還原文件。 -X<范本文件>或--exclude-from=<范本文件> 指定范本文件,其內含有一個或多個范本樣式,讓ar排除符合設置條件的文件。 -z或--gzip或--ungzip 通過gzip指令處理備份文件。 -Z或--compress或--uncompress 通過compress指令處理備份文件。 -<設備編號><存儲密度> 設置備份用的外圍設備編號及存放數據的密度。 --after-date=<日期時間> 此參數的效果和指定"-N"參數相同。 --atime-preserve 不變更文件的存取時間。 --backup=<備份方式>或--backup 移除文件前先進行備份。 --checkpoint 讀取備份文件時列出目錄名稱。 --concatenate 此參數的效果和指定"-A"參數相同。 --confirmation 此參數的效果和指定"-w"參數相同。 --delete 從備份文件中刪除指定的文件。 --exclude=<范本樣式> 排除符合范本樣式的文件。 --group=<群組名稱> 把加入設備文件中的文件的所屬群組設成指定的群組。 --help 在線幫助。 --ignore-failed-read 忽略數據讀取錯誤,不中斷程序的執行。 --new-volume-script=<Script文件> 此參數的效果和指定"-F"參數相同。 --newer-mtime 只保存更改過的文件。 --no-recursion 不做遞歸處理,也就是指定目錄下的所有文件及子目錄不予處理。 --null 從null設備讀取文件名稱。 --numeric-owner 以用戶識別碼及群組識別碼取代用戶名稱和群組名稱。 --owner=<用戶名稱> 把加入備份文件中的文件的擁有者設成指定的用戶。 --posix 將數據寫入備份文件時使用POSIX格式。 --preserve 此參數的效果和指定"-ps"參數相同。 --preserve-order 此參數的效果和指定"-A"參數相同。 --preserve-permissions 此參數的效果和指定"-p"參數相同。 --record-size=<區塊數目> 此參數的效果和指定"-b"參數相同。 --recursive-unlink 解開壓縮文件還原目錄之前,先解除整個目錄下所有文件的連接。 --remove-files 文件加入備份文件后,就將其刪除。 --rsh-command=<執行指令> 設置要在遠端主機上執行的指令,以取代rsh指令。 --same-owner 嘗試以相同的文件擁有者還原文件。 --suffix=<備份字尾字符串> 移除文件前先行備份。 --totals 備份文件建立后,列出文件大小。 --use-compress-program=<執行指令> 通過指定的指令處理備份文件。 --version 顯示版本信息。 --volno-file=<編號文件> 使用指定文件內的編號取代預設的卷冊編號。

二、gzip工具的使用方法
1.查看當前目錄下需要壓縮的文件

[root@control tmp]# [root@control tmp]# pwd /data/tmp [root@control tmp]# ll total 0 -rw-r--r--. 1 root root 0 Apr 30 14:10 file0.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file10.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file11.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file12.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file13.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file14.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file15.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file16.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file17.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file18.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file19.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file1.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file20.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file2.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file3.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file4.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file5.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file6.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file7.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file8.py -rw-r--r--. 1 root root 0 Apr 30 14:10 file9.py

2.使用gzip歸檔壓縮文件

[root@control tmp]# tar -czf /tmp/test.tar.gz /data/tmp/* tar: Removing leading `/' from member names tar: Removing leading `/' from hard link targets root@control tmp]# ls /tmp test.tar.gz

3.查看壓縮包內容

[root@control tmp]# tar -tf /tmp/test.tar.gz data/tmp/file0.py data/tmp/file10.py data/tmp/file11.py data/tmp/file12.py data/tmp/file13.py data/tmp/file14.py data/tmp/file15.py data/tmp/file16.py data/tmp/file17.py data/tmp/file18.py data/tmp/file19.py data/tmp/file1.py data/tmp/file20.py data/tmp/file2.py data/tmp/file3.py data/tmp/file4.py data/tmp/file5.py data/tmp/file6.py data/tmp/file7.py data/tmp/file8.py data/tmp/file9.py

4.查看是壓縮包信息

[root@control tmp]# [root@control tmp]# file /tmp/test.tar.gz /tmp/test.tar.gz: gzip compressed data, last modified: Fri Apr 30 11:09:35 2021, from Unix, original size 20480

5.解壓縮到目錄/root/test/下

[root@control tmp]# tar -xzf /tmp/test.tar.gz -C /root/test/ [root@control tmp]# ls /root/test/ data [root@control tmp]# ls /root/test/data/tmp/ file0.py file11.py file13.py file15.py file17.py file19.py file20.py file3.py file5.py file7.py file9.py file10.py file12.py file14.py file16.py file18.py file1.py file2.py file4.py file6.py file8.py

三、其他解壓縮工具

1.bzip工具進行歸檔解壓縮

[root@control tmp]# tar -cjf /tmp/test.tar.bz2 /data/tmp/ tar: Removing leading `/' from member names [root@control tmp]# ls /tmp test.tar.bz2 test.tar.gz [root@control tmp]# tar -xjf /tmp/test.tar.bz2 -C /data/tmp/ [root@control tmp]# tar -xjf /tmp/test.tar.bz2 -C /root/test/ [root@control tmp]# ls /root/test test/ test.txt [root@control tmp]# ls /root/test/data/tmp/ file0.py file11.py file13.py file15.py file17.py file19.py file20.py file3.py file5.py file7.py file9.py file10.py file12.py file14.py file16.py file18.py file1.py file2.py file4.py file6.py file8.py [root@control tmp]# [root@control tmp]# file /tmp/test.tar.bz2 /tmp/test.tar.bz2: bzip2 compressed data, block size = 900k

2.直接使用bzip進行解壓縮

[root@control tmp]# ls file0.py file11.py file13.py file15.py file17.py file19.py file20.py file3.py file5.py file7.py file9.py file10.py file12.py file14.py file16.py file18.py file1.py file2.py file4.py file6.py file8.py [root@control tmp]# gzip file1.py [root@control tmp]# ls file0.py file11.py file13.py file15.py file17.py file19.py file20.py file3.py file5.py file7.py file9.py file10.py file12.py file14.py file16.py file18.py file1.py.gz file2.py file4.py file6.py file8.py [root@control tmp]# gunzip file1.py.gz [root@control tmp]# ls file0.py file11.py file13.py file15.py file17.py file19.py file20.py file3.py file5.py file7.py file9.py file10.py file12.py file14.py file16.py file18.py file1.py file2.py file4.py file6.py file8.py

gzip工具直接使用方法與bzip一樣

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Linux下的tar归档及解压缩功能详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。