mklink(Windows)与 ln(Unix)
版本unknown 更新日志2025-11-18 GitHubunknown
340px

Windows mklink 基础 >>>

  • 语法:mklink [[/D] | [/H] | [/J]] <Link> <Target>
  • 文件符号链接(默认):mklink Link.txt Target.txt
  • 目录符号链接:mklink /D LinkDir TargetDir
  • 硬链接(文件):mklink /H Link.txt Target.txt
  • 目录联接(Junction):mklink /J LinkDir TargetDir
  • 非管理员场景可在「开发者模式」下创建符号链接

注意事项(Windows) >>>

  • 空格路径需引号;目标需存在(目录联接可在不存在时创建)
  • 跨盘符:符号链接可跨卷;硬链接仅限同卷且仅文件
  • 安全:UAC/策略限制;企业环境需配合组策略
  • 复制:保留链接语义(如 robocopy /sl)避免展开

Unix ln 基础 man coreutils

  • 硬链接(默认):ln TARGET LINK;符号链接:ln -s TARGET LINK
  • 常用:强制 -f、交互 -i、备份 -b、详细 -v
  • 相对路径:-r 生成相对符号链接(GNU)提升可移植性
  • 限制:硬链接不可跨文件系统,不可链接目录(部分系统例外)

常见排错 >>>

  • 权限不足:以管理员/提权运行;或检查文件系统能力
  • 目标丢失:符号链接指向不存在时会“悬空”
  • 工具兼容:部分归档/同步工具不保留链接语义
  • 大小写:Windows 默认大小写不敏感,注意路径一致性

PowerShell 等价命令 New-Item

  • 文件符号链接:New-Item -ItemType SymbolicLink -Path Link.txt -Target Target.txt
  • 目录联接:New-Item -ItemType Junction -Path LinkDir -Target TargetDir
  • 硬链接(文件):New-Item -ItemType HardLink -Path Link.txt -Target Target.txt