使用 tar 自动将文件归档到卷中

使用 tar 自动将文件归档到卷中

使用 tar 将文件简单地归档到多个卷中的命令是什么。我有一个名为 的文件file0,我想使用 tar 将其归档,以便file0将其拆分为 10MB 大小的 tar 文件。我该如何简单地做到这一点?Ubuntu 的 GUI 中“拆分”(用于 tar)选项呈灰色。

答案1

一种简单的方法是将文件打包成 tar,将存档打印到标准输出,然后通过 split 将其传递出去:

tar czpf - file0 | split -d -b 10M - file0

请注意,这并不是您尝试的。您在你的评论( tar czpf - . | split -d -b 10M - file0) 用作.输入。这意味着 的输入“文件”(tar当前目录)在split开始将其输出文件写入当前目录时就发生了变化,因此tar出现抱怨。为了避免这种情况,请像tar我上面所做的那样提供文件名,或者从另一个目录运行此命令:

cd /some/place
tar czpf - /path/to/dir/containing/file0 | split -d -b 10M - file0

在这两种情况下,要解压文件,您必须使用 cat 命令将文件合并起来:

cat file00* | tar xzvf -

相关内容