Join-Path
パスと子パスを 1 つのパスに結合します。
構文
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
説明
このコマンドレットは Join-Path
、パスと子パスを 1 つのパスに結合します。
パスの区切り記号はプロバイダーによって追加されます。
例
例 1: パスと子パスを結合する
PS C:\> Join-Path -Path "path" -ChildPath "childpath"
path\childpath
このコマンドは、パスと子パスを組み合わせて使用 Join-Path
します。
コマンドはプロバイダーから実行されるため、パスをFileSystem
\
結合するための区切り記号が提供されます。
例 2: ディレクトリ区切り記号が既に含まれているパスを結合する
PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
既存の \
ディレクトリ区切り記号は処理されるため、次の間 Path
に区切り記号が 1 つだけ存在します。 ChildPath
例 3: パスと子パスを結合してファイルとフォルダーを表示する
Join-Path "C:\win*" "System*" -Resolve
このコマンドは、パスと子パスを結合 C:\Win\*
することによって参照されるファイルとフォルダーを System\*
表示します。 同じファイルとフォルダー Get-ChildItem
が表示されますが、各項目への完全修飾パスが表示されます。 このコマンドでは、 Path
パラメーター名と ChildPath
省略可能なパラメーター名は省略されます。
例 4: PowerShell レジストリ プロバイダーで Join-Path を使用する
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
このコマンドは、次を含むControlSet
レジストリ サブキーにHKLM\System
レジストリ キーを表示します。
このパラメーターはResolve
、現在のプロバイダー パスの wildカード を含む、結合されたパスの解決を試みます。HKLM:\
例 5: 複数のパス ルートを子パスと結合する
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
このコマンドは、複数のパス ルートと子パスを組み合わせて使用 Join-Path
します。
Note
指定された Path
ドライブが存在する必要があります。または、そのエントリの結合が失敗します。
例 6: ファイル システム ドライブのルートと子パスを結合する
Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
このコマンドは、コンソール内の各 PowerShell ファイル システム ドライブのルートと子パスを Subdir
結合します。
このコマンドでは、コマンドレットを Get-PSDrive
使用して、FileSystem プロバイダーでサポートされている PowerShell ドライブを取得します。 このステートメントはForEach-Object
、PSDriveInfo オブジェクトの Root プロパティのみを選択し、指定された子パスと結合します。
出力は、コンピューター上の PowerShell ドライブに、ディレクトリにマップされたドライブが含まれていることを C:\Program Files
示しています。
例 7: 不定数のパスを結合する
Join-Path a b c d e f g
a\b\c\d\e\f\g
この AdditionalChildPath
パラメーターを使用すると、無制限の数のパスを結合できます。
この例では、パラメーター名は使用されません。したがって、"a" は 、"b" と Path
"c-g" ChildPath
にバインドされます。 AdditionalChildPath
パラメーター
-AdditionalChildPath
Path パラメーターの値に追加する追加の要素を指定します。 パラメーターは ChildPath
引き続き必須であり、同様に指定する必要があります。
このパラメーターは、不定数の ValueFromRemainingArguments
パスを結合できるプロパティと共に指定されます。
このパラメーターは PowerShell 6.0 で追加されました。
Type: | String[] |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ChildPath
パラメーターの値に追加する要素を Path
指定します。 ワイルドカードを使用できます。 パラメーター名 ChildPath
("ChildPath") は省略可能ですが、パラメーターは必須です。
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Credential
Note
このパラメーターは、PowerShell でインストールされているプロバイダーではサポートされていません。 別のユーザーを偽装したり、このコマンドレットの実行時に資格情報を昇格したりするには、Invoke-Command を使用 します。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
子パスを追加するメイン パスを 1 つ以上指定します。 ワイルドカードを使用できます。
値 Path
によって、どのプロバイダーがパスに参加し、パス区切り記号を追加するかが決まります。
パラメーター名 Path
("Path") は省略可能ですが、パラメーターは必須です。
Type: | String[] |
Aliases: | PSPath |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Resolve
このコマンドレットが、現在のプロバイダーからの参加済みパスの解決を試みる必要があることを示します。
- wildカード が使用されている場合、コマンドレットは結合されたパスに一致するすべてのパスを返します。
- ワイルドカードが使用されていない場合、パスが存在しない場合、コマンドレットはエラーになります。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
このコマンドレットへのパスを含む文字列をパイプ処理できます。
出力
このコマンドレットは、結果のパスを含む文字列を返します。
メモ
Path 名詞 (Path コマンドレット) を含むコマンドレットは、パス名を操作し、すべての PowerShell プロバイダーが解釈できる簡潔な形式で名前を返します。 プログラムやスクリプトで、パス名の全部または一部を特定の形式で表示するために使用することを目的としています。
、または他のパス マニピュレーターを使用する場合と同じように使用Dirname
Normpath
Realpath
Join
します。
パス コマンドレットは、プロバイダー 、プロバイダーなど、複数のプロバイダーとCertificate
共にRegistry
FileSystem
使用できます。
このコマンドレットは、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用可能なプロバイダーを一覧表示するには、「.」と入力します Get-PSProvider
。 詳細については、「about_Providers」を参照してください。
関連リンク
PowerShell
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示