tar命令能夠爲linux的文件和目錄建立檔案。利用tar,能夠爲某一特定文件建立檔案(備份文件),也能夠在檔案中改變文件,或者向檔案中加入新的文件。利用tar命令,能夠把一大堆的文件和目錄所有打包成一個文件,這對於備份文件或將幾個文件組合成爲一個文件以便於網絡傳輸是很是重要的。linux
兩個概念:打包和壓縮。打包是指將一大堆文件或目錄變成一個總的文件;壓縮則是將一個大的文件經過一些壓縮算法變成一個小文件。 算法
區分這兩個概念,源於Linux中不少壓縮程序只能針對一個文件進行壓縮,這樣當你想要壓縮一大堆文件時,你得先將這一大堆文件先打成一個包(tar命令),而後再用壓縮程序進行壓縮(gzip命令)。shell
語法:tar 選項 參數
基本選項:
網絡
-A或--catenate:新增文件到以存在的備份文件; spa
-B:設置區塊大小; code
-c或--create:創建新的備份文件; ip
-C <目錄>:這個選項用在解壓縮,若要在特定目錄解壓縮,能夠使用這個選項。 get
-d:記錄文件的差異; io
-x或--extract或--get:從備份文件中還原文件; class
-t或--list:列出備份文件的內容;
-z或--gzip或--ungzip:經過gzip指令處理備份文件;
-Z或--compress或--uncompress:經過compress指令處理備份文件;
-f<備份文件>或--file=<備份文件>:指定備份文件;
-v或--verbose:顯示指令執行過程;
-r:添加文件到已經壓縮的文件;
-u:添加改變了和現有的文件到已經存在的壓縮文件;
-j:支持bzip2解壓文件;
-v:顯示操做過程;
-l:文件系統邊界設置;
-k:保留原有文件不覆蓋;
-m:保留文件不被覆蓋;
-w:確認壓縮文件的正確性;
-p或--same-permissions:用原來的文件權限還原文件;
-P或--absolute-names:文件名使用絕對名稱,不移除文件名稱前的「/」號;
-N <日期格式> 或 --newer=<日期時間>:只將較指定日期更新的文件保存到備份文件裏; --exclude=<範本樣式>:排除符合範本樣式的文件。
參數:文件或者目錄,指定要打包的文件或者目錄列表。
實例:
root@debian:/tmp# tar -cvf sw.log swmannagement/ **打包歸檔swmanagement文件 root@debian:/tmp# ls pulse-nyTPvNf0U02p sw.log swmannagement root@debian:/tmp# tar -zcvf sw.log.tar.gz sw.log **使用gzip壓縮歸檔文件 root@debian:/tmp# tar -tvf sw.log **-t查看歸檔文件裏面的內容 root@debian:/tmp# tar -zxvf sw.log.tar.gz ** -x還原備份文件 最經常使用的tar命令格式: 壓 縮:tar -jcv -f filename.tar.bz2 要被壓縮的文件或目錄名稱 查 詢:tar -jtv -f filename.tar.bz2 解壓縮:tar -jxv -f filename.tar.bz2 -C 欲解壓縮的目錄