附文:https://blog.csdn.net/qq_43657810/article/details/132328941

https://blog.csdn.net/qq_16268979/article/details/127780124

1、创建归档文件:将文件 file1、file2 和 directory 打包到一个名为 archive.tar 的归档文件中。

tar -cvf archive.tar file1 file2 directory
  • -c: 创建新的归档文件
  • -v: 显示详细输出,列出被添加到归档中的文件
  • -f: 指定归档文件的名称

2、解压归档文件:解压名为 archive.tar 的归档文件,还原其中包含的文件和目录。

tar -xvf archive.tar
  • -x: 解压归档文件
  • -v: 显示详细输出,列出被解压的文件
  • -f: 指定要解压的归档文件的名称

3、压缩归档文件:将名为 directory 的目录打包成一个归档文件,然后使用 gzip 进行压缩,生成名为 archive.tar.gz 的文件。

  • -c: 创建新的归档文件
  • -z: 使用 gzip 压缩归档文件
  • -v: 显示详细输出,列出被添加到归档中的文件
  • -f: 指定归档文件的名称

指定压缩格式

tar 可以结合不同的压缩程序来创建和解压压缩归档文件。

z : 使用 gzip 压缩。

tar -czvf archive.tar.gz directory
tar -xzvf archive.tar.gz

j: 使用 bzip2 压缩。

tar -cjvf archive.tar.bz2 directory
tar -xjvf archive.tar.bz2

J: 使用 xz 压缩。

tar -cJvf archive.tar.xz directory
tar -xJvf archive.tar.xz

补充:

有一堆文件来自两个tar文件,怎么单独删除来自某个文件的解压文件,可以利用xargs

[youzipii@localhost tar_test]$ tar -tvf odd.tar
-rw-rw-r-- youzipii/youzipii 10240 2024-05-30 20:53 file1
-rw-rw-r-- youzipii/youzipii 0 2024-05-30 20:26 file3
-rw-rw-r-- youzipii/youzipii 0 2024-05-30 20:26 file5
[youzipii@localhost tar_test]$ tar -tvf even.tar
-rw-rw-r-- youzipii/youzipii 0 2024-05-30 20:58 file0
-rw-rw-r-- youzipii/youzipii 0 2024-05-30 20:58 file2
-rw-rw-r-- youzipii/youzipii 0 2024-05-30 20:58 file4
[youzipii@localhost tar_test]$ ls
even.tar file0 file1 file2 file3 file4 file5 odd.tar
tar -tf odd.tar | xargs rm -f