tar -A 和 tar -r 有什么区别?

tar -A 和 tar -r 有什么区别?

我读到 tar -A 的意思是:将档案添加到现有档案的末尾; tar -r 表示:将文件附加到 tar 存档的末尾。它们的意思不是一样的吗?谁能解释一下这两者之间的区别吗?

答案1

tar -A接受两个或多个 tarball 并将它们连接起来:

tar -A -f tarball1.tar tarball2.tar

tarball2.tar将的内容添加到tarball1.tar

tar -r将文件添加到 tarball:

tar -r -f tarball1.tar file1

添加file1tarball1.tar, 作为其中的文件与其其他内容一起。

这是一个更详细的示例:

$ touch file1 file2 file3
$ tar cf tar1.tar file1 file2
$ tar cf tar2.tar file3
$ cp tar1.tar tar3.tar
$ tar Af tar1.tar tar2.tar
$ tar tf tar1.tar
file1
file2
file3
$ tar rf tar3.tar file3
$ tar tf tar3.tar
file1
file2
file3

请注意我们如何以两种不同的方式获得相同的内容。如果您使用tar -r多个 tarball,则最终会在接收 tarball 内添加添加的 tarball,按原样,而不是“解开包装”。

相关内容