Linux系統(tǒng)中tar是最常用的打包工具,通過(guò)打包工具可以壓縮/解壓 比如常見(jiàn)的壓縮包格式 如下:
- tar 未壓縮文件 只是做了一個(gè)打包而已
- tar.gz 使用gzip算法格式壓縮的壓縮包
- tar.bz2 bz2格式壓縮包
- tar.xz xz格式壓縮
參數(shù)介紹
tar 的參數(shù)很多 列出幾個(gè)比較常用的記錄一下。
格式 tar -[參數(shù)...] [文件/目錄](méi)
參數(shù) | 含義 |
---|---|
-c | create創(chuàng)建文件 |
-C <目錄> | 指定解壓位置 |
-x | 提取解壓文件 |
-t | 列出壓縮包中包含哪些文件,查看包中的內(nèi)容 |
-z | gzip格式壓縮或解壓 |
-Z | 支持compress解壓文件 |
-f<備份文件> | 指定打包壓縮的備份文件 |
-v | 顯示指令執(zhí)行過(guò)程 |
-r | 添加文件到已經(jīng)壓縮的文件 |
-u | 添加改變了和現(xiàn)有的文件到已經(jīng)存在的壓縮文件 |
-j | 支持bz2格式壓縮或解壓 |
-v | 顯示執(zhí)行過(guò)程 |
-J | 支持xz格式壓縮或解壓 |
-k | 保留原有文件不覆蓋 |
-m | 保留文件不被覆蓋 |
-w | 確認(rèn)壓縮文件的正確性 |
-p | 保留原來(lái)的文件權(quán)限與屬性 |
-P | 使用文件名的絕對(duì)路徑,不移除文件名稱(chēng)前的“/”號(hào) |
演示
當(dāng)前目錄有一個(gè)1.5G的SQL文件。
[root@mysqlbak]# ll -h
total 1.5G
-rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
僅打包
執(zhí)行打包
tar cvf databak.tar mysql_data_prod_2023-12-22-13-
07.sql
查看打包的文件結(jié)果 可以看到就是單純的打個(gè)包 并沒(méi)有壓縮
ll -h
total 2.9G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
解壓命令 tar -xvf databak.tar
使用gzip壓縮并打包
tar zcvf databak.tar.gz mysql_data_prod_2023-12-22-13-07.sql
查看gzip打包的效果 databak.tar.gz 文件明顯從1.5GB縮小到238M了 。但是花的時(shí)間稍微要長(zhǎng)一點(diǎn)。
ll -h
total 3.1G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
-rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
解壓命令 tar -zxvf databak.tar.gz
使用bz2壓縮并打包
tar jcvf databak.tar.bz2 mysql_data_prod_2023-12-22-13-07.sql
查看bz2的打包效果 可以看到文件名為 databak.tar.bz2 只有133M了。但是壓縮的時(shí)間是真的長(zhǎng)
ll -h
total 3.3G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
解壓命令 tar -jxvf databak.tar.bz2
使用xz壓縮并打包
tar -Jcvf databak.tar.xz mysql_data_prod_2023-12-22-13-07.sql
查看xz的打包效果 可以看到文件名為 databak.tar.xz只有119M了。壓縮時(shí)間竟然比bz2還要更長(zhǎng)。
ll -h
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
-rw-r--r-- 1 root root 119M Dec 22 17:48 databak.tar.xz
解壓命令 tar -Jxvf databak.tar.xz
總結(jié)
- 從壓縮后的文件大小來(lái)看 gz > bz2 > xz
- 從壓縮后的消耗時(shí)長(zhǎng)來(lái)看 gz< bz2 < xz
壓縮的時(shí)間越長(zhǎng) 壓縮后的文件越小,但是解壓的時(shí)間也會(huì)邊長(zhǎng),所以選一個(gè)中規(guī)中矩的壓縮方式是最好的,畢竟硬盤(pán)又不貴,目前比較普遍的格式是tar.gz。壓縮大小和時(shí)間都比較居中 能夠接收。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-760879.html
另外zip命令也是比較常用的壓縮工具 使用命令格式:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-760879.html
#壓縮
zip -r xxx.zip xxx.sql
#解壓
unzip xxx.zip
到了這里,關(guān)于linux tar打包壓縮解壓命令學(xué)習(xí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!