6

PowerShell CommunityExtensionsPSCXコマンドレットNew-Hardlinkhttp://pscx.codeplex.com/を使用して新しいハードリンクを作成したいと思います。manファイルを読み、コマンドのほぼすべての組み合わせを試しましたが、機能しません。私は何が欠けていますか?(fsutilについては知っていますが、このコマンドレット/エイリアスを使用したいです)

ディレクトリ構造は次のとおりです。E:\ Source E:\ Test

これが私が試したコマンドのいくつかのバリエーションです:

New-Hardlink E:\Test\Source E:\Source
New-Hardlink -Path:"E:\Test\Source" -Target:"E:\Source"
New-Hardlink E:\Source E:\Test\Source
New-Hardlink E:\Source E:\Test\
New-Hardlink -P:"E:\Source" -T:"E:\Test\Source"

想定される構文は次のとおりです。

New-Hardlink [-Path] <String> [-Target] <String> [<CommonParameters>]

-Path <String>
    Path to the new link.

-Target <String>
    Target of the link.

結果は常に次のいずれかです。

New-Hardlink : Unable to find the file 'E:\Source.

このコマンドはディレクトリでは機能せず、ファイルでのみ機能しますか?

4

2 に答える 2

8

私は自分の質問にひそかに答えます。

はい、確かにハードリンクはファイルを参照します。ディレクトリでこれを実現するには、New-Junctionコマンドを次のように使用する必要があります。

New-Junction E:\Test\Dest E:\Source

最初のパラメータは、新しいジャンクションを配置する場所を示します。

2番目のパラメータは、ジャンクションするディレクトリを参照します

于 2009-08-20T07:21:34.800 に答える
4

Powershell 5+には、あらゆるタイプのハード/ソフトリンクおよびジャンクションを作成するためのネイティブな方法が含まれています。

グーグルから来る人のために:

New-ItemPowerShell 5.0以降では、コマンドレットを使用したシンボリックリンクとジャンクションの作成がサポートされています。

以下では、をクリックするB.txtとに移動しますA.txt。ディレクトリについても同様です。

# To create a symbolic link on a file:
New-Item -ItemType SymbolicLink -Name B.txt -Target A.txt
New-Item -ItemType SymbolicLink -Path C:\Temp\B.txt -Value A.txt

# To create a hard-link on a file:
New-Item -ItemType HardLink -Path C:\B.txt -Value C:\A.txt

# To create a symbolic link on a directory:
New-Item -ItemType SymbolicLink -Name B_Directory -Target C:\A_Directory

# To create a junction on a directory:
New-Item -ItemType Junction -Path C:\Junction -Value C:\A_Directory
于 2018-02-06T13:26:45.837 に答える