web-dev-qa-db-ja.com

Windowsにはln -sまたは同等の機能がありますか?

ファイルをC:\Windows\System32\drivers\etc\hostsにリンクする必要があります

Windowsでそれを行うにはどうすればよいですか? Windowsにln -sまたは同等のソフトリンクはありますか?

38
prosseek

コマンド「mklink」を探しています。

Microsoft Docs または 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
39
scigor

他の方法もあるかもしれませんが、私がよく知っている方法は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.
16
Matthew S

junctions がありますが、これが必要なことを正確に実行するかどうかはわかりません。

編集-申し訳ありませんが、ジャンクションはファイルではなくディレクトリにのみ適用されます

3
Martin Beckett

リンクシェル拡張 は、(特に)シンボリックリンクを作成できます。素晴らしいコンテキストメニューの統合。最新のWindowsバージョンで利用でき、頻繁に更新されます。

2
Francois

@infが言うように、 mklink はVista以降のソリューションです。

2000/XPの場合、 fsutil hardlink を使用できます。 mklinkとは異なり、ハードリンクはドライブ間で機能しないことに注意してください。

2
studgeek

パワーシェル

Microsoftが5年以上前からコマンドインタープリターとして powershell を使用するようにアドバイスしている限り、cmd.exeはレガシーアプリケーションになりつつあります。この質問には、Powershellでの回答が欠けています。

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

これはPowershell v5.0以降で機能します

1
maoizm