Split-Path
指定されたパス部分を返します。
構文
Split-Path
[-Path] <String[]>
[-Parent]
[-Resolve]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
[-NoQualifier]
[-Resolve]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
[-Leaf]
[-Resolve]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
[-Qualifier]
[-Resolve]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
[-Resolve]
[-IsAbsolute]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
Split-Path
-LiteralPath <String[]>
[-Resolve]
[-Credential <PSCredential>]
[-UseTransaction]
[<CommonParameters>]
説明
Split-Path
コマンドレットは、親フォルダー、サブフォルダー、ファイル名など、パスの指定された部分のみを返します。 また、分割されたパスで参照されている項目を取得したり、パスが相対パスか絶対パスかを判断したりすることもできます。
このコマンドレットを使用すると、選択したパスの一部だけを取得または送信できます。
例
例 1: パスの修飾子を取得する
Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier
HKCU:
このコマンドは、パスの修飾子のみを返します。 修飾子はドライブです。
例 2: パスのファイル名部分を表示する
Leaf パラメーターを使用する場合、Split-Path
は、指定されたパス文字列内の最後の項目のみを返します。その項目がファイルかディレクトリかに関係なく返されます。
Split-Path -Path .\folder1\*.txt -Leaf
*.txt
Split-Path -Path .\folder1\*.txt -Leaf -Resolve
file1.txt
file2.txt
Resolve パラメーターを使用すると、指定されたパス文字列Split-Path
解決され、パスによって参照される項目が返されます。
例 3: 親コンテナーを取得する
Parent パラメーターを使用する場合、Split-Path
は、指定されたパス文字列の親コンテナー部分のみを返します。 Path文字列に親コンテナーが含まれていない場合、Split-Path
は空の文字列を返します。
Split-Path -Path .\folder1\file1.txt -Parent
.\folder1
Split-Path -Path .\folder1\file1.txt -Parent -Resolve
D:\temp\test\folder1
Resolve パラメーターを使用すると、Split-Path
は指定されたパス文字列を解決し、親コンテナーの完全なパスを返します。
例 4: パスが絶対パスかどうかを判断する
このコマンドは、パスが相対パスと絶対パスのどちらであるかを特定します。 この場合、パスは現在のフォルダーを基準としているため、ドット (.
) で表され、 $False
を返します。
Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute
False
例 5: 場所を指定したパスに変更する
このコマンドは、PowerShell プロファイルを含むフォルダーに場所を変更します。
PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Users\User01\Documents\PowerShell>
かっこ内のコマンドは、 Split-Path
を使用して、組み込みの $Profile
変数に格納されているパスの親のみを返します。 Parent パラメーターは、既定の分割場所パラメーターです。
そのため、コマンドから省略できます。 かっこは、最初にコマンドを実行するように PowerShell に指示します。 これは、パス名が長いフォルダーに移動するのに便利な方法です。
例 6: パイプラインを使用してパスを分割する
'C:\Users\User01\My Documents\My Pictures' | Split-Path
C:\Users\User01\My Documents
このコマンドでは、パイプライン演算子 (|
) を使用して、 Split-Path
へのパスを送信します。 パスは引用符で囲んで、1 つのトークンであることを示します。
パラメーター
-Credential
Note
このパラメーターは、PowerShell でインストールされているプロバイダーではサポートされていません。 別のユーザーを偽装したり、このコマンドレットの実行時に資格情報を昇格したりするには、 Invoke-Command を使用します。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-IsAbsolute
このコマンドレットは、パスが絶対パスの場合は $True
を返し、相対パスの場合は $False
することを示します。 Windows では、絶対パス文字列は、 C:
や HKCU:
などのプロバイダー ドライブ指定子で始まる必要があります。 相対パスは、ドット (.
) またはドットドット (..
) で始まります。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Leaf
Leaf パラメーターを使用する場合、Split-Path
は、指定されたパス文字列内の最後の項目のみを返します。その項目がファイルかディレクトリかに関係なく返されます。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-LiteralPath
分割するパスを指定します。 Path とは異なり、LiteralPath の値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。
型: | String[] |
Aliases: | PSPath |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-NoQualifier
このコマンドレットは、修飾子を指定せずにパスを返します。 FileSystem またはレジストリ プロバイダーの場合、修飾子はプロバイダー パスのドライブ ( C:
や HKCU:
など) です。 たとえば、パス C:\Test\Logs\Pass1.log
では、 \Test\Logs\Pass1.log
のみを返します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Parent
Split-Path
は、指定されたパス文字列の親コンテナー部分のみを返します。 Path文字列に親コンテナーが含まれていない場合、Split-Path
は空の文字列を返します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Path
分割するパスを指定します。 ワイルドカード文字を使用できます。 パスにスペースが含まれる場合は、二重引用符で囲みます。 このコマンドレットへのパスをパイプすることもできます。
型: | String[] |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | True |
-Qualifier
このコマンドレットは、指定したパスの修飾子のみを返します。 FileSystem またはレジストリ プロバイダーの場合、修飾子はプロバイダー パスのドライブ ( C:
や HKCU:
など) です。
型: | SwitchParameter |
配置: | 1 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Resolve
このコマンドレットは、パス要素を表示する代わりに、結果の分割パスによって参照される項目を表示することを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UseTransaction
アクティブなトランザクションのコマンドが含まれます。 このパラメーターは、トランザクションが進行中の場合のみ有効です。 詳細については、「 about_Transactions」を参照してください。
型: | SwitchParameter |
Aliases: | usetx |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
このコマンドレットへのパスを含む文字列をパイプ処理できます。
出力
このコマンドレットはテキスト文字列を返します。 Resolve パラメーターを指定すると、項目の場所を説明する文字列が返されます。 FileInfo RegistryKey オブジェクトなど、項目を表すオブジェクトは返されません。
IsAbsolute パラメーターを指定すると、このコマンドレットは Boolean 値を返します。
メモ
分割場所パラメーター (Qualifier、 Parent、 Leaf、および NoQualifier) は排他的です。 各コマンドでいずれか 1 つだけを使用できます。
Path名詞 (Path コマンドレット) を含むコマンドレットは、パス名を操作し、すべての PowerShell プロバイダーが解釈できる簡潔な形式で名前を返します。 これらは、パス名のすべてまたは一部を特定の形式で表示するプログラムやスクリプトで使用するように設計されています。 Dirname、Normpath、Realpath、Join、またはその他のパス マニピュレーターを使用する方法で使用します。
Path コマンドレットを複数のプロバイダーと共に使用できます。 これには、FileSystem、レジストリ、および証明書プロバイダーが含まれます。
Split-Path
は、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用可能なプロバイダーを一覧表示するには、「Get-PSProvider
」と入力します。 詳細については、「 about_Providers」を参照してください。
関連リンク
PowerShell