带有 APFS 的 macOS:终端中的写时复制

Posted

技术标签:

【中文标题】带有 APFS 的 macOS:终端中的写时复制【英文标题】:macOS with APFS: Copy-On-Write in Terminal 【发布时间】:2020-04-12 05:34:02 【问题描述】:

我正在编写一些将备份数据组合到一个目录中的小脚本。然后将目录内容上传到云服务,然后我们可以将其删除。我想知道如何在终端中通过cp 之类的命令来利用 APFS 的写时复制功能。

Finder 做得很好。但如果我运行cp Largefile LargeFileCopy,复制文件并相应地使用空间需要很长时间。

【问题讨论】:

【参考方案1】:

我自己找到的。

在 macOS 上,cp 支持 -c 选项。 cp -c Largefile LargeFileCopy 然后将使用新的 clonefile(2) 库并立即返回,而不使用设备上的任何额外空间。

【讨论】:

以上是关于带有 APFS 的 macOS:终端中的写时复制的主要内容,如果未能解决你的问题,请参考以下文章

Linux 0.11-写时复制-30

fork()的写时复制技术(转载)

Swift 如何实现 Array 的写时复制行为?

再谈QVector与QByteArray——Qt的写时复制(copy on write)技术

再谈QVector与QByteArray——Qt的写时复制(copy on write)技术

带有 APFS 的 High Sierra 上的小部件