443 字
2 分钟
Windows和Linux上的各种链接
Windows
硬链接(Hard Link)
指向同一文件的多个目录项,共享同一 inode/数据;删除一个不影响其他;只能针对文件,不能跨卷。只能在同一卷(分区)内;不能给目录创建;文件真正被删除需所有硬链接都删掉
符号链接(Symbolic Link)/软链接
类似快捷方式,保存的是目标路径;可跨卷、可指向文件或目录;目标不存在时链接会失效。
目录联接(Junction)
只能指向目录,基于重解析点,类似本地目录的重定向;不支持跨网络,只能指向本地目录;比符号链接更老,兼容性更好一些,个人理解是和符号链接差不多。
快捷方式(.lnk)
不是真正的文件系统链接,而是一个特殊文件,记录目标路径、图标、启动参数等,最常用、权限要求最低;可设置工作目录、参数、图标等,但不是透明的文件系统链接。
使用方式
mklink /H hardlink.txt original.txt :: 硬链接mklink softlink.txt original.txt :: 文件符号链接mklink /D dirlink D:\somedir :: 目录符号链接mklink /J junction D:\somedir :: 目录联接Linux
硬链接(Hard Link)—同样的名字
多个文件名指向同一 inode;共享数据;删除一个不影响其他;只能针对文件,不能跨文件系统。不能给目录创建;不能跨分区/文件系统。
软链接 / 符号链接(Symbolic Link)
保存目标路径的特殊文件;可指向文件或目录;可跨文件系统;目标不存在时变成断链
使用方法
ln original.txt hardlink.txt # 硬链接ln -s /path/to/target softlink # 软链接(绝对路径)ln -s ../relative/target softlink # 软链接(相对路径) Windows和Linux上的各种链接
https://jyzxlo.pages.dev/posts/windows和linux上的各种链接/