1. 概念
打包是指將多個文件或目錄打包成一個文件,壓縮是指將一個大的文件通過算法壓縮成一個小的文件。由于Linux中的很多壓縮程序只能對一個文件進行,所以通常要先將全部文件打包成一個文件,然后再對那一個打包文件進行壓縮。
2. tar命令介紹
使用tar命令可以進行打包和解包、壓縮和解壓縮等操作,使用tar命令打出來的包被稱為tar包。例如,可以用tar命令將多個文件或目錄打包成一個tar包,也可以對那個tar包進行解包操作。
2.1 打包操作:tar <選項> <源文件或目錄>
命令參數(shù):
- -c 將多個文件或目錄進行打包
- -f <包名> 打包到指定文件,-f后面要緊跟完整的文件名(包括擴展名)
- -v 打印出打包過程
- -u 在tar包中添加新的文件(無法直接在壓縮包中添加文件)
2.1.1 命令示例:
1、tar -cvf package.tar test1 test2
將test1和test2打包到package.tar文件,并顯示打包過程
2、tar -cf package.tar test1 Desktop/
將文件test1和目錄Desktop打包成package.tar文件
3、tar -uf package.tar test3
將test3添加到package.tar文件中
2.2 解包操作:tar <選項> <壓縮包>
- -x 解包操作
- -f <包名> 解包到指定文件,f后面要緊跟完整的文件名
- -C<目錄> 指定目錄為解包位置
- -t 查看包里的文件
2.2.1命令示例:
1、tar -xf package.tar
將package.tar文件解包到當(dāng)前目錄
2、tar -xf test.tar -C …
將test.tar解包到上一級目錄
3、tar -tf package.tar
查看package.tar包里的文件
3. 同時(解)打包并(解)壓縮(最常用)
Linux下的壓縮需要先將文件打包再進行壓縮,而解壓縮則是先將壓縮文件解壓縮成一個包,再對包進行解包操作。也就是說(解)壓縮是需要走兩步的,而tar命令可以通過一行命令來同時進行兩步的操作。Linux下最常見的兩種壓縮技術(shù)是gzip和bzip2,所以一般只要知道如何對這兩種壓縮格式進行(解)壓縮就夠了。
命令格式:tar <選項> <壓縮包> <源文件或目錄>。只需要在打包或解包操作的選項里加上z或者j。z選項使用gzip壓縮程序,j選項使用bzip2壓縮程序。
- -z 壓縮為".tar.gz"格式,或?qū)?gz壓縮包進行解壓縮
- -j 壓縮為".tar.bz2"格式,或?qū)?bz2壓縮包進行解壓縮
命令示例:
1、tar -czf test.tar.gz test1 test2
將test1和2打包成一個tar包,然后用gzip壓縮程序?qū)ar包進行壓縮,生成一個名為test.tar.gz的壓縮包。也可以直接說成將test1和2打包壓縮成test.tar.gz文件
2、tar -xzf test.tar.gz -C Desktop/
用gzip程序?qū)est.tar.gz文件解壓縮成一個tar包,然后將tar包解包到Desktop目錄中。也可以直接說成將test.tar.gz解壓縮到Desktop目錄
3、tar -jcvf test.tar.bz2 test1 test2
將test1和2通過bzip2壓縮程序打包壓縮成test.tar.bz2文件,并打印出過程
4. 補充概念:
1、Linux下的文件名是沒有任何作用的,但程序員通常會以適當(dāng)?shù)臄U展名來表示文件的種類。例如.sh表示腳本或批處理文件;.tar、.tar.gz、.zip等表示經(jīng)過不同壓縮軟件壓縮的文件;文章來源:http://www.zghlxwxcb.cn/news/detail-476714.html
2、既然擴展名沒有任何作用,為什么tar命令的-f后面的文件需要加上文件擴展名?因為Linux支持的壓縮命令非常多,而不同的命令所用的壓縮技術(shù)并不相同,可能無法互相壓縮或解壓縮文件。所以,打包壓縮文件時加上擴展名是為了讓我們(程序員)知道該文件用的哪種壓縮命令,可以對照著解壓縮。例如,解壓.tar.gz文件需要用-z命令(gzip程序),而.tar.bz2文件要用-j命令(bzip2程序)。文章來源地址http://www.zghlxwxcb.cn/news/detail-476714.html
到了這里,關(guān)于tar命令文件打包壓縮的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!