Linux基礎(chǔ)命令-echo輸出信息_Linux學(xué)習(xí)中的博客-CSDN博客
Linux三劍客-grep命令_Linux學(xué)習(xí)中的博客-CSDN博客
Linux文件管理命令(3)-mv改動(dòng)文件_Linux學(xué)習(xí)中的博客-CSDN博客
文章目錄
前言
一、tar命令介紹
二、命令語法及常用參數(shù)
三、 參考案例
總結(jié)
前言
在工作上,有同事需要用到程序或一堆文件時(shí),則需要先將文件打包后壓縮一定比例后再傳輸?shù)綄?duì)方的電腦上,能節(jié)省硬盤的資源并且加快文件的傳輸速率;linux中有命令可以支持打包和壓縮,一起看看吧。
一、tar命令介紹
????????tar命令的功能是用于打包、壓縮和解壓文件的,通過一些參數(shù)可以創(chuàng)建Linux系統(tǒng)中常見的格式,例:.tar、.tar.gz、.tar.bz2、.tar.xz等;對(duì)于RHEL7、CentOS7版本以后的系統(tǒng),解壓時(shí)可以不加壓縮格式參數(shù)(如z,j,J),系統(tǒng)能補(bǔ)充對(duì)應(yīng)格式的參數(shù)進(jìn)行解壓。
?打包和壓縮的概念:
1、打包是指將一大堆文件或者目錄合成一個(gè)總的文件;
2、壓縮則是將一個(gè)大的文件通過一些壓縮算法變成一個(gè)小文件;
二、命令語法及常用參數(shù)
1)先用--help查看語法格式,由于這個(gè)命令的參數(shù)太多了,就不放出來了。
語法:tar 【選項(xiàng)】文件
[root@localhost ~]# tar --help
用法: tar [選項(xiàng)...] [FILE]...
2)常用參數(shù)
-c | create創(chuàng)建文件 |
-C <目錄> | 指定解壓位置 |
-x | 提取解壓文件 |
-t | 列出壓縮包中包含哪些文件,查看包中的內(nèi)容 |
-z | gzip格式壓縮或解壓 |
-Z | 支持compress解壓文件 |
-f<備份文件> | 指定打包壓縮的備份文件 |
-v | 顯示指令執(zhí)行過程 |
-r | 添加文件到已經(jīng)壓縮的文件 |
-u | 添加改變了和現(xiàn)有的文件到已經(jīng)存在的壓縮文件 |
-j | 支持bz2格式壓縮或解壓 |
-v | 顯示執(zhí)行過程 |
-J | 支持xz格式壓縮或解壓 |
-k | 保留原有文件不覆蓋 |
-m | 保留文件不被覆蓋 |
-w | 確認(rèn)壓縮文件的正確性 |
-p | 保留原來的文件權(quán)限與屬性 |
-P | 使用文件名的絕對(duì)路徑,不移除文件名稱前的“/”號(hào) |
三、 參考案例
tar命令比較特殊,如果打包、壓縮、解壓參數(shù)上加不加" - "都是正確格式。
1)打包目錄文件? v表示執(zhí)行過程,當(dāng)然如果為了方便,也可以不加;
[root@localhost ~]# mkdir data
[root@localhost ~]# touch data/{a..d}.txt
[root@localhost ~]# tar cvf data.tar data/
data/
data/a.txt
data/b.txt
data/c.txt
data/d.txt
[root@localhost ~]# tar cf data1.tar data
[root@localhost ~]# file data.tar
data.tar: POSIX tar archive (GNU)
可以看到這個(gè)文件還不是一個(gè)壓縮的格式,目前只是作為打包文件,如果要讓其打包并壓縮,可以在加上參數(shù) z、j、J等。
2)三個(gè)格式壓縮比例,這里用/etc的目錄做測(cè)試;
[root@localhost ~]# tar zcvf etc.tar.gz /etc
[root@localhost ~]# du -h etc.tar.gz
12M etc.tar.gz
[root@localhost ~]# tar jcvf etc.tar.bz2 /etc
[root@localhost ~]# du -h etc.tar.bz2
11M etc.tar.bz2
[root@localhost ~]# tar Jcvf etc.tar.xz /etc
[root@localhost ~]# du -h etc.tar.xz
8.4M etc.tar.xz
壓縮比例從大到小 gz>bz2>xz ,并不是說壓縮的越小就越好,每個(gè)參數(shù)都有它存在的意義,即使gz的壓縮比例比其他要大一些,gz依然是市面上用的次數(shù)最多的格式,因?yàn)樗麎嚎s的速度很快,效率很高。并且由于現(xiàn)在的磁盤容量都不會(huì)說很小,所以對(duì)于用戶來說,相差的那些容量影響不大,反而壓縮的速率是更加看重的。
3)解壓文件 ,可以先用-t參數(shù)查看有什么文件;
[root@localhost ~]# tar -tvf data.tar.gz #列出文件
drwxr-xr-x root/root 0 2023-02-10 17:11 data/
-rw-r--r-- root/root 0 2023-02-10 17:11 data/a.txt
-rw-r--r-- root/root 0 2023-02-10 17:11 data/b.txt
-rw-r--r-- root/root 0 2023-02-10 17:11 data/c.txt
-rw-r--r-- root/root 0 2023-02-10 17:11 data/d.txt
[root@localhost ~]# file data.tar.gz #格式是gzip
data.tar.gz: gzip compressed data, from Unix, last modified: Fri Feb 10 17:36:55 2023
[root@localhost ~]# tar zxvf data.tar.gz #解壓
data/
data/a.txt
data/b.txt
data/c.txt
data/d.txt
4)解壓文件并且將文件移動(dòng)到tmp目錄下,使用-C參數(shù);
[root@localhost ~]# tar -jxvf etc.tar.bz2 -C /tmp/
5)如果說要?jiǎng)h除當(dāng)前目錄下jpg的文件,可以先打包,刪除原始文件的,再刪除包。文章來源:http://www.zghlxwxcb.cn/news/detail-547189.html
tar cvf jpg.tar *.jpg --remove-files
rm -f jpg.tar
總結(jié)
系統(tǒng)是linux時(shí),難免會(huì)需要用到tar命令的,有時(shí)候在某些程序的官網(wǎng)上下載包,上傳到服務(wù)器中,則需要用tar命令解壓包;有些壓縮格式其實(shí)都有自己的命令,像gzip、zip、bz2、xz都是命令來的,只不過日常使用中比較少用到這些命令,更多是習(xí)慣用tar這個(gè)命令。文章來源地址http://www.zghlxwxcb.cn/news/detail-547189.html
到了這里,關(guān)于Linux基礎(chǔ)命令-tar打包壓縮文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!