>운영 및 유지보수 >리눅스 운영 및 유지 관리 >리눅스 tar는 어떤 파일인가요?

리눅스 tar는 어떤 파일인가요?

青灯夜游
青灯夜游원래의
2023-04-07 15:57:514062검색

tar는 UNIX/Linux 시스템의 압축 파일 형식이며 tar 명령을 사용하여 보관된 패키지의 파일 형식입니다. Linux에서 tar 명령은 보관을 위해 여러 파일을 별도의 테이프나 디스크에 함께 저장할 수 있습니다. 이 명령은 압축 풀기라고 하는 패키징의 역 프로세스인 보관 파일에서 필요한 파일을 복원할 수도 있습니다.

리눅스 tar는 어떤 파일인가요?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

tar는 Unix 및 Unix 계열 시스템의 파일 패키징 도구로, 여러 파일을 하나의 파일로 병합할 수 있습니다. 패키지된 파일 이름도 "tar"입니다. tar는 압축되지 않은 tar 파일을 의미합니다. 압축된 tar 파일에는 압축된 파일의 확장자가 추가됩니다. 예를 들어, gzip으로 압축된 tar 파일의 확장자는 ".tar.gz"입니다.

tar 파일이란 무엇인가요?

tar는 UNIX/Linux 시스템에서 압축된 파일 형식입니다. tar 파일은 Linux 시스템에서 직접 압축을 풀어 사용할 수 있는 압축 파일입니다. Windows에서 WinRAR과 같은 일반적인 압축 해제 소프트웨어를 사용하여 열 수도 있습니다. tar는 실제로 일반적인 rar 및 zip 형식과 동일합니다.

Linux tar 패키징 명령 자세한 설명

Linux 시스템에서 가장 일반적으로 사용되는 보관(패키징) 명령은 tar이며, 보관을 위해 많은 파일을 별도의 테이프나 디스크에 함께 저장할 수 있습니다. 뿐만 아니라 이 명령은 압축 해제라고 하는 패키징의 반대 프로세스인 아카이브에서 필요한 파일을 복원할 수도 있습니다.

tar 명령을 사용하여 보관된 패키지는 일반적으로 tar 패키지라고 합니다(tar 패키지 파일은 모두 ".tar"로 끝남).

tar 명령은 패키징 작업을 수행합니다

tar 명령을 패키징 작업에 사용할 때 명령의 기본 형식은 다음과 같습니다.

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

이 명령에서 일반적으로 사용되는 옵션과 해당 의미는 표에 나와 있습니다. 1.

표 1 tar 패키징 명령의 일반적인 옵션 및 의미
옵션 의미
-c 여러 파일 또는 디렉터리를 패키징합니다.
-A tar 파일을 아카이브에 추가합니다.
-f 패키지 이름 패키지의 파일 이름을 지정합니다. 패키지의 확장자는 관리자를 위한 형식을 식별하는 데 사용되므로 확장자를 올바르게 지정해야 합니다.
-v 파일 패키징 과정을 표시합니다.

지정하는 tar 명령 옵션을 선택할 때 옵션 앞에 "-"를 입력할 필요가 없습니다. 예를 들어, "cvf" 옵션을 사용하면 "-cvf"와 동일한 효과가 있습니다.

tar 명령을 사용하여 파일과 디렉터리를 패키징하는 방법을 알아보기 위해 몇 가지 예를 들어 보겠습니다.
【예제 1】파일과 디렉터리를 압축합니다.

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

일반적으로 "-cvf" 옵션을 사용합니다. 패키징 시 패키징 후 파일명을 지정해야 한다는 점 기억하시고, 확장자는 ".tar" 를 사용하세요. 패키징 디렉터리의 경우에도 마찬가지입니다.

[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文件

tar 명령은 공백으로 구분된 여러 파일이나 디렉터리를 패키징할 수도 있습니다. 예:

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

【예제 2】디렉토리를 압축하고 압축합니다.

먼저 압축 명령으로는 디렉터리를 직접 압축할 수 없다는 점을 말씀드립니다. 먼저 tar 명령을 사용하여 디렉터리를 패키지화한 다음 gzip 명령이나 bzip2 명령을 사용하여 패키지된 파일을 압축해야 합니다. 예:

[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

tar 명령을 사용하여 압축을 풀 때

tar 명령을 사용하여 tar 패키지의 압축을 풀 때 명령의 기본 형식은 다음과 같습니다.

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

압축을 풀 때 사용하는 경우 일반적으로 Used 의 옵션과 의미는 표 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视频教程

위 내용은 리눅스 tar는 어떤 파일인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.