【发布时间】:2015-05-13 13:41:20
【问题描述】:
我在一个资源有限和 BusyBox 的 Linux 系统上 -- 这个版本的 tar 不支持 --append、-r。在 [2] 使 B 文件看起来来自目录 A 之后,是否有一种解决方法允许我 [1] 将目录 B 中的文件附加到目录 A 中的现有文件 tar? (后来,当有人提取文件时,它们应该都在同一个目录 A 中。)
情况:我有一个要 tar 的文件列表,但我必须先处理其中一些文件。这些文件可能被其他进程使用,所以我不想就地编辑它们。我想在使用磁盘空间时保持保守,所以我的脚本只复制那些需要更改的文件(而不是全部复制它们,然后处理一些,最后用 tar 归档它们——如果我将它们全部复制,我可能会遇到磁盘空间问题)。
这意味着我要归档的文件最终位于两个不同的位置。但我希望生成的 tar 文件看起来好像它们都在同一个位置。在我的脚本接近尾声时,我得到了两个按名称列出 A 和 B 文件的文本文件。
我认为使用完整版本的 tar 很简单,但我必须使用 BusyBox 版本(用法如下)。提前感谢您的任何想法!
Usage: tar -[cxtzjaZmvO] [-X FILE] [-f TARFILE] [-C DIR] [FILE]...
Create, extract, or list files from a tar file
Operation:
c Create
x Extract
t List
Options:
f Name of TARFILE ('-' for stdin/out)
C Change to DIR before operation
v Verbose
z (De)compress using gzip
j (De)compress using bzip2
a (De)compress using lzma
Z (De)compress using compress
O Extract to stdout
h Follow symlinks
m Don't restore mtime
exclude File to exclude
X File with names to exclude
T File with names to include
【问题讨论】: