我看到别名的大小为167.7kB,而符号链接仅为4kB。
- 两者之间有什么区别,或者它们的目的是什么?
- 哪一个更好?对于仅在一台机器或网络中使用链接/别名的情况。
添加
http://prosseek.blogspot.com/2012/12/symbolic-link-and-alias-in-mac.html
我看到别名的大小为167.7kB,而符号链接仅为4kB。
http://prosseek.blogspot.com/2012/12/symbolic-link-and-alias-in-mac.html
Answers:
别名包含两条信息:链接到的文件的唯一标识符,以及链接到的文件的路径和文件名。
如果重命名或移动文件,然后使用该文件最初具有的路径和文件名创建一个新文件,则链接到原始文件的任何别名现在都将链接到新文件。
但是,如果重命名或移动文件而不替换它,然后调用别名,则别名将更新为指向新的路径和文件名,并使用唯一标识符执行此操作。
另一方面,符号链接不包含文件的唯一标识符,并且如果文件被重命名或移动并且未替换为具有相同路径和文件名的文件,则符号链接将显示为损坏。
您的选择应取决于最适合您的方案。
我对哨兵的回答感到困惑create a new file with the path and filename that the file originally had
。也是突然的,为什么要这么做?
好吧,如果您了解别名如何以及如何使用UID和文件路径工作(而symlink仅在路径上工作),那么您可以更轻松地理解区别和投票结果。
在HFS和HFS +文件系统上,每个文件和文件夹都有一个唯一的持久标识符。别名使用此标识以及路径名信息来查找同一卷上的文件和文件夹。
从Mac OS X 10.2开始,别名首先使用路径名,然后使用唯一标识来反转此搜索顺序。这意味着,如果您移动文件并将其替换为同名文件,则原始文件的别名现在指向新文件。同样,如果在同一卷上移动文件(而不替换文件),则别名会使用唯一的标识信息来定位文件。
当文件或文件夹移动时,别名可以更新其路径信息或唯一身份信息以说明更改。如果文件移动到同一卷上的某个位置,则别名将使用该文件的新路径信息更新其内部记录。同样,如果原始文件被具有相同名称但唯一标识不同的文件替换,则别名将使用新文件的唯一标识更新其内部记录。(的结果
create a new file with the path and filename that the file originally had
)由于别名最初使用文件系统路径来解析文件位置,因此它们现在提供与符号链接类似的行为。符号链接仅依赖于路径信息来定位文件。如果将文件移动到同一卷上的某个位置而不替换它,则指向文件的符号链接会断开,而别名不会断开。修复符号链接的唯一方法是删除它并创建一个新的链接。