Split-Path
指定されたパス部分を返します。
構文
Split-Path
[-Path] <String[]>
[-Parent]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
-Leaf
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
-LeafBase
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
-Extension
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
-Qualifier
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
-NoQualifier
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
[-Path] <String[]>
[-Resolve]
-IsAbsolute
[-Credential <PSCredential>]
[<CommonParameters>]
Split-Path
-LiteralPath <String[]>
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
説明
このコマンドレットは Split-Path
、親フォルダー、サブフォルダー、ファイル名など、パスの指定された部分のみを返します。 また、分割されたパスで参照されている項目を取得したり、パスが相対パスか絶対パスかを判断したりすることもできます。 他のパラメーターを指定せずにパスを分割した場合は、 Split-Path
指定されたパスの親部分を返します。
このコマンドは Split-Path
文字列を返します。 FileInfo やコマンドのような他の項目オブジェクトは*-Item
返されません。
例
例 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>
かっこ内のコマンドは、組み込み$Profile
変数に格納されているパスの親のみを返すために使用Split-Path
します。 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 |
-Extension
このコマンドレットがリーフの拡張機能のみを返すように指定します。 たとえば、パスC:\Test\Logs\Pass1.log
では、.log
このパラメーターは、PowerShell 6.0 で導入されました。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-IsAbsolute
パスが絶対$False
パスで、相対パスの場合は、このコマンドレットが返$True
されることを示します。 Windows では、絶対パス文字列はプロバイダー ドライブ指定子で始まる必要があります 。次HKCU:
のようになりますC:
。 相対パスは、ドット (.
) またはドットドット (..
) で始まります。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Leaf
Leaf パラメーターを使用する場合は、Split-Path
指定されたパス文字列内の最後の項目のみを返します。その項目がファイルかディレクトリかに関係なく返されます。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-LeafBase
このコマンドレットがリーフの基本名のみを返すように指定します。 たとえば、パスC:\Test\Logs\Pass1.log
では、Pass1
このパラメーターは、PowerShell 6.0 で導入されました。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-LiteralPath
分割するパスを指定します。 Path とは異なり、LiteralPath の値は型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。
型: | String[] |
Aliases: | PSPath, LP |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-NoQualifier
このコマンドレットは、修飾子を指定せずにパスを返します。 FileSystem またはレジストリ プロバイダーの場合、修飾子はプロバイダー パスのドライブです 。次に例を示 C:
します HKCU:
。 たとえば、パスC:\Test\Logs\Pass1.log
では、\Test\Logs\Pass1.log
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | 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 |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Resolve
このコマンドレットは、パス要素を表示する代わりに、結果の分割パスによって参照される項目を表示することを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
このコマンドレットへのパスを含む文字列をパイプ処理できます。
出力
このコマンドレットはテキスト文字列を返します。 Resolve パラメーターを指定すると、項目の場所を説明する文字列が返されます。 FileInfo オブジェクトや RegistryKey オブジェクトなど、項目を表すオブジェクトは返されません。
IsAbsolute パラメーターを指定すると、このコマンドレットはブール値を返します。
メモ
分割場所のパラメーター (修飾子、親、拡張、リーフ、リーフベース、および NoQualifier) は排他的です。 各コマンドでいずれか 1 つだけを使用できます。
Path 名詞 (Path コマンドレット) を含むコマンドレットは、パス名を操作し、すべての PowerShell プロバイダーが解釈できる簡潔な形式で名前を返します。 これらは、パス名のすべてまたは一部を特定の形式で表示するプログラムやスクリプトで使用するように設計されています。 Dirname、Normpath、Realpath、Join、またはその他のパス マニピュレーターを使用する方法で使用します。
Path コマンドレットは、複数のプロバイダーと共に使用できます。 これには、FileSystem、レジストリ、および証明書プロバイダーが含まれます。
Split-Path
は、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用可能なプロバイダーを一覧表示するには、「.」と入力しますGet-PSProvider
。 詳細については、「about_Providers」を参照してください。
関連リンク
PowerShell