符号链接与 Windows 快捷方式?

bec*_*cko 4 symbolic-link

Ubuntu 中的符号链接和 Windows 快捷方式之间有什么区别?它们是类似的概念吗?或者 Ubuntu 中是否有类似于更多 Windows 快捷方式的东西?

小智 8

是和否。

为了理解这里的变幻莫测,您需要了解 inode 表和写入磁盘的数据之间的关系。

Windows 快捷方式是包含在常规文件中的路径数据。将它们视为仅包含文件 URI 的文本文件。来自维基百科:

文件系统和不知道快捷方式的软件程序将快捷方式视为普通文件。只有理解快捷方式的软件程序(例如 Windows shell 和文件浏览器)才会将它们视为对其他文件的引用。

另一个区别是该机制的功能:Microsoft Windows 快捷方式通常通过绝对路径(从根目录开始)引用目标,而 POSIX 符号链接可以通过绝对路径或相对路径引用目标。如果符号链接的位置和目的地共享一个公共路径前缀,但在创建符号链接时(例如,在可以在任何地方解压的存档文件中)该前缀尚不知道,则后者很有用。

Microsoft Windows 应用程序快捷方式包含可以与目标关联的附加元数据,而 POSIX 符号链接只是将被解释为绝对或相对路径名的字符串。

Windows Vista、7 和 8也支持 NTFS 下的本地符号链接

符合 POSIX 的符号链接不是文件。相反,它们是由文件系统自动解析的 inode 表中的条目。任何软件程序在访问符号链接时,都会改为看到目标,无论程序是否知道符号链接。