【发布时间】:2021-09-04 16:13:09
【问题描述】:
我在 macOS 上使用copyfile(sourceFilePath, targetFilePath, nullptr, COPYFILE_CLONE) 来复制符号链接(请参阅https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/copyfile.3.html)。我需要保留符号链接及其所有元数据。它对文件符号链接非常有效 - 它复制符号链接,结果是一个符号链接。但它不适用于目录符号链接(指向目录的符号链接)。它被复制,但结果不保存为符号链接,它是一个目录。我尝试添加标志COPYFILE_NOFOLLOW,但结果仍然相同。我究竟做错了什么?还有其他方法可以复制指向目录及其所有元数据的符号链接吗?
【问题讨论】:
-
在 macOS 10.15 上尝试了一个示例,您的用例似乎有效。
COPYFILE_NOFOLLOW似乎是多余的,因为COPYFILE_CLONE已经覆盖了COPYFILE_NOFOLLOW_SRC。您使用的是哪个版本的 macOS? -
macOS Catalina 10.15.7
-
所以我发现了问题。这是路径中的尾部斜线。我应该得到减分。