Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah fail linux tar?

Apakah fail linux tar?

青灯夜游
青灯夜游asal
2023-04-07 15:57:513983semak imbas

tar ialah format fail termampat pada sistem UNIX/Linux dan format fail untuk pakej yang diarkibkan menggunakan arahan tar. Di Linux, arahan tar boleh menyimpan banyak fail bersama-sama ke pita atau cakera yang berasingan untuk pengarkiban;

Apakah fail linux tar?

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

tar ialah alat pembungkusan fail pada sistem seperti Unix dan Unix Ia boleh menggabungkan berbilang fail ke dalam satu fail Nama fail yang dibungkus juga ialah "tar". tar bermaksud fail tar yang tidak dimampatkan. Fail tar yang telah dimampatkan mempunyai sambungan fail termampat yang dilampirkan Contohnya, fail tar yang dimampatkan gzip mempunyai sambungan ".tar.gz".

Apakah itu fail tar?

tar ialah format fail termampat pada sistem UNIX/Linux dan fail tar ialah fail termampat. Dalam sistem Linux, anda boleh menyahmampat terus dan menggunakan fail mampat ini. Ia juga boleh dibuka menggunakan perisian penyahmampatan biasa seperti WinRAR di bawah Windows. tar sebenarnya bersamaan dengan format rar dan zip biasa.

Penjelasan terperinci tentang arahan pembungkusan tar Linux

Dalam sistem Linux, perintah pengarkiban (pembungkusan) yang paling biasa digunakan ialah tar, yang boleh menukar banyak fail Simpan bersama-sama ke pita atau cakera yang berasingan untuk pengarkiban. Bukan itu sahaja, arahan ini juga boleh memulihkan fail yang diperlukan dari arkib, iaitu proses terbalik pembungkusan, dipanggil unpacking.

Pakej yang diarkibkan menggunakan arahan tar biasanya dipanggil pakej tar (fail pakej tar semuanya berakhir dengan ".tar").

Arahan tar menjalankan operasi pembungkusan

Apabila arahan tar digunakan untuk operasi pembungkusan, format asas perintah itu ialah:

[root@localhost ~]#tar [选项] 源文件或目录

Pilihan yang biasa digunakan bagi arahan ini dan makna masing-masing ditunjukkan dalam Jadual 1.

表 1 tar 打包命令常用选项及含义
选项 含义
-c 将多个文件或目录进行打包。
-A 追加 tar 文件到归档文件。
-f 包名 指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名;
-v 显示打包文件过程;

Perlu diingatkan bahawa apabila menggunakan arahan tar untuk menentukan pilihan, anda tidak perlu memasukkan "-" di hadapan pilihan. Contohnya, menggunakan pilihan "cvf" mempunyai kesan yang sama seperti "-cvf".

Biar saya berikan anda beberapa contoh untuk melihat cara menggunakan arahan tar untuk membungkus fail dan direktori.
【Contoh 1】Pak fail dan direktori.

[root@localhost ~]# tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg
#把anacondehks.cfg打包为 anacondehks.cfg.tar文件

Pilihan "-cvf" secara amnya adalah penggunaan biasa. Ingat untuk menyatakan nama fail selepas pembungkusan semasa pembungkusan, dan gunakan ".tar" sebagai sambungan. Perkara yang sama berlaku untuk direktori pembungkusan:

[root@localhost ~]# ll -d test/
drwxr-xr-x 2 root root 4096 6月 17 21:09 test/
#test是我们之前的测试目录
[root@localhost ~]# tar -cvf test.tar test/
test/
test/test3
test/test2
test/test1
#把目录打包为test.tar文件

Arahan tar juga boleh membungkus berbilang fail atau direktori, selagi ia dipisahkan oleh ruang. Contohnya:

[root@localhost ~]# tar -cvf ana.tar anaconda-ks.cfg /tmp/
#把anaconda-ks.cfg文件和/tmp目录打包成ana.tar文件包

[Contoh 2] Pek dan mampatkan direktori.

Pertama sekali, izinkan saya nyatakan bahawa arahan pemampatan tidak boleh memampatkan direktori secara langsung Anda mesti menggunakan arahan tar untuk membungkus direktori, dan kemudian menggunakan arahan gzip atau perintah bzip2 untuk memampatkan fail yang dibungkus. Contohnya:

[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
#我们之前已经把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命令会把test.tar压缩成test.tar.gz

Arahan tar melakukan operasi pembongkaran

Apabila arahan tar digunakan untuk membongkar tar pakej Apabila digunakan, format asas arahan ini adalah seperti berikut:

[root@localhost ~]#tar [选项] 压缩包

Apabila digunakan untuk membongkar, pilihan yang biasa digunakan dan maknanya ditunjukkan dalam Jadual 2.

表 2 tar 解打包常用选项及含义
选项 含义
-x 对 tar 包做解打包操作。
-f 指定要解压的 tar 包的包名。
-t 只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作。
-C 目录 指定解打包位置。
-v 显示解打包的具体过程。

其实解打包和打包相比,只是把打包选项 "-cvf" 更换为 "-xvf"。我们来试试:

[root@localhost ~]# tar -xvf anaconda-ks.cfg. tar
#解打包到当前目录下

如果使用 "-xvf" 选项,则会把包中的文件解压到当前目录下。如果想要指定解压位置,则需要使用 "-C(大写)" 选项。例如:

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

如果只想查看文件包中有哪些文件,则可以把解打包选项 "-x" 更换为测试选项 "-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
#会用长格式显示test.tar文件包中文件的详细信息

tar命令做打包压缩(解压缩解打包)操作

你可能会觉得 Linux 实在太不智能了,一个打包压缩,居然还要先打包成 ".tar" 格式,再压缩成 ".tar.gz" 或 ".tar.bz2" 格式。其实 tar 命令是可以同时打包压缩的,前面的讲解之所打包和压缩分开,是为了让大家了解在 Linux 中打包和压缩的不同。

当 tar 命令同时做打包压缩的操作时,其基本格式如下:

[root@localhost ~]#tar [选项] 压缩包 源文件或目录

此处常用的选项有以下 2 个,分别是:

  • -z:压缩和解压缩 ".tar.gz" 格式;
  • -j:压缩和解压缩 ".tar.bz2"格式。

【例 1】压缩与解压缩 ".tar.gz"格式。

[root@localhost ~]# tar -zcvf tmp.tar.gz /tmp/
#把/temp/目录直接打包压缩为".tar.gz"格式,通过"-z"来识别格式,"-cvf"和打包选项一致

解压缩也只是在解打包选项 "-xvf" 前面加了一个 "-z" 选项。

[root@localhost ~]# tar -zxvf tmp.tar.gz
#解压缩与解打包".tar.gz"格式

前面讲的选项 "-C" 用于指定解压位置、"-t" 用于查看压缩包内容,在这里同样适用。

【例 2】压缩与解压缩 ".tar.bz2" 格式。

和".tar.gz"格式唯一的不同就是"-zcvf"选项换成了 "-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 命令最初被用来在磁带上创建备份,现在可以在任何设备上创建备份。利用 tar 命令可以把一大堆的文件和目录打包成一个文件,这对于备份文件或是将几个文件组合成为一个文件进行网络传输是非常有用的。

相关推荐:《Linux视频教程

Atas ialah kandungan terperinci Apakah fail linux tar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn