电源外壳

电源外壳

我需要将文件链接到C:\Windows\System32\drivers\etc\hosts

ln -s我该如何在 Windows 上做到这一点? Windows 中是否有类似或等效的软链接?

答案1

您正在寻找命令“mklink”(cmd)或“New-Item”命令(powershell)。

  • 命令:

文档和示例微软文档或者ss64.com

取自链接的示例:

// To create a symbolic link named MyDocs from the root directory to the \Users\User1\Documents directory, type:
mklink /d \MyDocs \Users\User1\Documents
  • 电源外壳:

文档和示例微软文档. 在页面上搜索符号链接。

来自链接的示例:

$link = New-Item -ItemType SymbolicLink -Path .\link -Target\Notice.txt 
$link | Select-Object LinkType, Target

LinkType     Target
--------     ------
SymbolicLink {.\Notice.txt}

答案2

可能还有其他方法,但我熟悉的是 mklink:

C:\>mklink 
Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target

        /D      Creates a directory symbolic link.  Default is a file
                symbolic link.
        /H      Creates a hard link instead of a symbolic link.
        /J      Creates a Directory Junction.
        Link    specifies the new symbolic link name.
        Target  specifies the path (relative or absolute) that the new link
                refers to.

答案3

电源外壳

只要微软建议使用作为 5 年前的命令解释器,并且cmd.exe正在成为遗留应用程序,这个问题在 Powershell 中缺少答案:

New-Item -path ~\Desktop\hosts -itemType SymbolicLink -target c:\Windows\System32\Drivers\etc\hosts

从 Powershell v5.0 开始有效

答案4

正如@inf所说,链接是 Vista 及以上版本的解决方案。

对于 2000/XP,您可以使用fsutil 硬链接。请注意,与 mklink 不同,硬链接不能跨驱动器起作用。

相关内容