我曾在一个大容量(TB)、不断变化的带有子文件夹和文件的目录上使用过此命令。
$ tar c dir/* |gzip - | ssh user@host 'cd /dir/ && tar xz'
最终的结果会是怎样呢?
会有吗仅有的tar 开始时的文件?
答案1
从测试来看,tar 似乎在继续之前创建了一个文件列表,因此最终结果是 tar 扫描目录时存在的文件就是传输的文件。
我是这样测试的:
- 创建了 2 个大型文本文件(每个约 3-400M),分别名为 bigfile1 和 bigfile2
- 在另一个 shell 窗口中为名为 c-notsobigfile 的文件准备了触摸
- 开始对文件所在的目录进行 tar 操作,当 bigfile1 备份完成后,我触发了 touch
这是我的最终结果
tar czvf bigfiles.tar.tz test2/
a test2
a test2/bigfile
a test2/bigfile2
我的 c-notsobigfile 丢失了。