TextEdit 不关心硬链接吗?

TextEdit 不关心硬链接吗?

可能重复:
Mac OS X 中 GUI 模式下硬链接不起作用

我做了一个小实验。首先我在终端中运行以下命令:

mkdir test
cd test
echo "A" > a
echo "B" > b
ln a.txt c

现在ac具有相同的内容,A以及相同的 inode 编号。然后我可以c使用 vim 编辑,以包含C而不是Aa也将包含 C,因为它们是同一个文件。

但是,如果我再次进行相同的实验,但使用 TextEdit 而不是 vim,则在保存时似乎会创建一个新文件。c获取一个新的 inode 编号并a仍然包含A。 这是为什么? 发生了什么事?

答案1

也许 TextEdit 的保存程序是这样工作的:

  1. 将内容存储到与原始文件名称不同的文件中,以确保所有内容都正确写入磁盘。如果内容已成功写入磁盘,请继续。
  2. 取消链接旧文件名
  3. 将新文件重命名为“旧文件名”
  4. 释放旧文件名的文件描述符。

相关内容