我读到 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
添加file1
到tarball1.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,按原样,而不是“解开包装”。