溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

linux tar文件有什么作用

發(fā)布時(shí)間:2023-04-07 16:03:03 來源:億速云 閱讀:119 作者:iii 欄目:建站服務(wù)器

本文小編為大家詳細(xì)介紹“l(fā)inux tar文件有什么作用”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“l(fā)inux tar文件有什么作用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。

tar是UNIX/Linux系統(tǒng)上的壓縮文件格式,是使用tar命令歸檔的包的文件格式。在Linux中,tar命令可以將許多文件一起保存到一個(gè)單獨(dú)的磁帶或磁盤中進(jìn)行歸檔;該命令還可以從歸檔文件中還原所需文件,也就是打包的反過程,稱為解打包。

tar是Unix和類Unix系統(tǒng)上文件打包工具,可以將多個(gè)文件合并為一個(gè)文件,打包后的文件名亦為“tar”。tar代表未被壓縮的tar文件。已被壓縮的tar文件則追加壓縮文件的擴(kuò)展名,如經(jīng)過gzip壓縮后的tar文件,擴(kuò)展名為“.tar.gz”。

tar是什么文件?

tar是UNIX/Linux系統(tǒng)上的壓縮文件格式,tar文件則是一種壓縮文件,在Linux系統(tǒng)中可以直接解壓使用這種壓縮文件。在Windows下也可以使用WinRAR等常見的解壓縮軟件打開。tar其實(shí)就相當(dāng)于常見的rar和zip格式。

Linux tar打包命令詳解

Linux 系統(tǒng)中,最常用的歸檔(打包)命令就是 tar,該命令可以將許多文件一起保存到一個(gè)單獨(dú)的磁帶或磁盤中進(jìn)行歸檔。不僅如此,該命令還可以從歸檔文件中還原所需文件,也就是打包的反過程,稱為解打包。

使用 tar 命令歸檔的包通常稱為 tar 包(tar 包文件都是以“.tar”結(jié)尾的)。

tar命令做打包操作

當(dāng) tar 命令用于打包操作時(shí),該命令的基本格式為:

[root@localhost ~]#tar [選項(xiàng)] 源文件或目錄

此命令常用的選項(xiàng)及各自的含義如表 1 所示。

表 1 tar 打包命令常用選項(xiàng)及含義
選項(xiàng)含義
-c將多個(gè)文件或目錄進(jìn)行打包。
-A追加 tar 文件到歸檔文件。
-f 包名指定包的文件名。包的擴(kuò)展名是用來給管理員識(shí)別格式的,所以一定要正確指定擴(kuò)展名;
-v顯示打包文件過程;

需要注意的是,在使用 tar 命令指定選項(xiàng)時(shí)可以不在選項(xiàng)前面輸入“-”。例如,使用“cvf”選項(xiàng)和 “-cvf”起到的作用一樣。

下面給大家舉幾個(gè)例子,一起看看如何使用 tar 命令打包文件和目錄。
【例 1】打包文件和目錄。

[root@localhost ~]# tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg
#把a(bǔ)nacondehks.cfg打包為 anacondehks.cfg.tar文件

選項(xiàng) "-cvf" 一般是習(xí)慣用法,記住打包時(shí)需要指定打包之后的文件名,而且要用 ".tar" 作為擴(kuò)展名。打包目錄也是如此:

[root@localhost ~]# ll -d test/
drwxr-xr-x 2 root root 4096 6月 17 21:09 test/
#test是我們之前的測(cè)試目錄
[root@localhost ~]# tar -cvf test.tar test/
test/
test/test3
test/test2
test/test1
#把目錄打包為test.tar文件

tar命令也可以打包多個(gè)文件或目錄,只要用空格分開即可。例如:

[root@localhost ~]# tar -cvf ana.tar anaconda-ks.cfg /tmp/
#把a(bǔ)naconda-ks.cfg文件和/tmp目錄打包成ana.tar文件包

【例 2】打包并壓縮目錄。

首先聲明一點(diǎn),壓縮命令不能直接壓縮目錄,必須先用 tar 命令將目錄打包,然后才能用 gzip 命令或 bzip2 命令對(duì)打包文件進(jìn)行壓縮。例如:

[root@localhost ~]#ll -d test test.tar
drwxr-xr-x 2 root root 4096 6月 17 21:09 test
-rw-r--r-- 1 root root 10240 6月 18 01:06 test.tar
#我們之前已經(jīng)把test目錄打包成test.tar文件
[root@localhost ~]# gzip test.tar
[root@localhost ~]# ll test.tar.gz
-rw-r--r-- 1 root root 176 6月 18 01:06 test.tar.gz
#gzip命令會(huì)把test.tar壓縮成test.tar.gz

tar命令做解打包操作

當(dāng) tar 命令用于對(duì) tar 包做解打包操作時(shí),該命令的基本格式如下:

[root@localhost ~]#tar [選項(xiàng)] 壓縮包

當(dāng)用于解打包時(shí),常用的選項(xiàng)與含義如表 2 所示。

表 2 tar 解打包常用選項(xiàng)及含義
選項(xiàng)含義
-x對(duì) tar 包做解打包操作。
-f指定要解壓的 tar 包的包名。
-t只查看 tar 包中有哪些文件或目錄,不對(duì) tar 包做解打包操作。
-C 目錄指定解打包位置。
-v顯示解打包的具體過程。

其實(shí)解打包和打包相比,只是把打包選項(xiàng) "-cvf" 更換為 "-xvf"。我們來試試:

[root@localhost ~]# tar -xvf anaconda-ks.cfg. tar
#解打包到當(dāng)前目錄下

如果使用 "-xvf" 選項(xiàng),則會(huì)把包中的文件解壓到當(dāng)前目錄下。如果想要指定解壓位置,則需要使用 "-C(大寫)" 選項(xiàng)。例如:

[root@localhost ~]# tar -xvf test.tar -C /tmp
#把文件包test.tar解打包到/tmp/目錄下

如果只想查看文件包中有哪些文件,則可以把解打包選項(xiàng) "-x" 更換為測(cè)試選項(xiàng) "-t"。例如:

[root@localhost ~]# tar -tvf test.tar
drwxr-xr-x root/root 0 2016-06-17 21:09 test/
-rw-r-r- root/root 0 2016-06-17 17:51 test/test3
-rw-r-r- root/root 0 2016-06-17 17:51 test/test2
-rw-r-r- root/root 0 2016-06-17 17:51 test/test1
#會(huì)用長(zhǎng)格式顯示test.tar文件包中文件的詳細(xì)信息

tar命令做打包壓縮(解壓縮解打包)操作

你可能會(huì)覺得 Linux 實(shí)在太不智能了,一個(gè)打包壓縮,居然還要先打包成 ".tar" 格式,再壓縮成 ".tar.gz" 或 ".tar.bz2" 格式。其實(shí) tar 命令是可以同時(shí)打包壓縮的,前面的講解之所打包和壓縮分開,是為了讓大家了解在 Linux 中打包和壓縮的不同。

當(dāng) tar 命令同時(shí)做打包壓縮的操作時(shí),其基本格式如下:

[root@localhost ~]#tar [選項(xiàng)] 壓縮包 源文件或目錄

此處常用的選項(xiàng)有以下 2 個(gè),分別是:

  • -z:壓縮和解壓縮 ".tar.gz" 格式;

  • -j:壓縮和解壓縮 ".tar.bz2"格式。

【例 1】壓縮與解壓縮 ".tar.gz"格式。

[root@localhost ~]# tar -zcvf tmp.tar.gz /tmp/
#把/temp/目錄直接打包壓縮為".tar.gz"格式,通過"-z"來識(shí)別格式,"-cvf"和打包選項(xiàng)一致

解壓縮也只是在解打包選項(xiàng) "-xvf" 前面加了一個(gè) "-z" 選項(xiàng)。

[root@localhost ~]# tar -zxvf tmp.tar.gz
#解壓縮與解打包".tar.gz"格式

前面講的選項(xiàng) "-C" 用于指定解壓位置、"-t" 用于查看壓縮包內(nèi)容,在這里同樣適用。

【例 2】壓縮與解壓縮 ".tar.bz2" 格式。

和".tar.gz"格式唯一的不同就是"-zcvf"選項(xiàng)換成了 "-jcvf",如下所示:

[root@localhost ~]# tar -jcvf tmp.tar.bz2 /tmp/
#打包壓縮為".tar.bz2"格式,注意壓縮包文件名
[root@localhost ~]# tar -jxvf tmp.tar.bz2
#解壓縮與解打包".tar.bz2"格式

把文件直接壓縮成".tar.gz"和".tar.bz2"格式,才是 Linux 中最常用的壓縮方式,這是大家一定要掌握的壓縮和解壓縮方法。

tar 命令最初被用來在磁帶上創(chuàng)建備份,現(xiàn)在可以在任何設(shè)備上創(chuàng)建備份。利用 tar 命令可以把一大堆的文件和目錄打包成一個(gè)文件,這對(duì)于備份文件或是將幾個(gè)文件組合成為一個(gè)文件進(jìn)行網(wǎng)絡(luò)傳輸是非常有用的。

讀到這里,這篇“l(fā)inux tar文件有什么作用”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI