次の方法で共有


Split-Path

指定されたパス部分を返します。

構文

ParentSet (既定)

Split-Path
    [-Path] <String[]>
    [-Parent]
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

LeafSet

Split-Path
    [-Path] <String[]>
    -Leaf
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

LeafBaseSet

Split-Path
    [-Path] <String[]>
    -LeafBase
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

ExtensionSet

Split-Path
    [-Path] <String[]>
    -Extension
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

QualifierSet

Split-Path
    [-Path] <String[]>
    -Qualifier
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

NoQualifierSet

Split-Path
    [-Path] <String[]>
    -NoQualifier
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

IsAbsoluteSet

Split-Path
    [-Path] <String[]>
    -IsAbsolute
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

LiteralPathSet

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>

かっこ内のコマンドは、Split-Path を使用して、組み込みの $PROFILE 変数に格納されているパスの親のみを返します。 Parent パラメーターは、既定の分割場所パラメーターです。 そのため、コマンドから省略できます。 かっこは、最初にコマンドを実行するように PowerShell に指示します。 これは、パス名が長いフォルダーに移動するのに便利な方法です。

例 6: パイプラインを使用してパスを分割する

'C:\Users\User01\My Documents\My Pictures' | Split-Path
C:\Users\User01\My Documents

このコマンドは、パイプライン演算子 (|) を使用して、Split-Pathへのパスを送信します。 パスは引用符で囲んで、1 つのトークンであることを示します。

パラメーター

-Credential

このパラメーターは、PowerShell でインストールされているプロバイダーではサポートされていません。 別のユーザーを偽装したり、このコマンドレットの実行時に資格情報を昇格したりするには、Invoke-Commandを使用します。

パラメーターのプロパティ

型:PSCredential
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Extension

このコマンドレットがリーフの拡張機能のみを返すように指定します。 たとえば、パス C:\Test\Logs\Pass1.logでは、.logのみを返します。

このパラメーターは、PowerShell 6.0 で導入されました。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

ExtensionSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-IsAbsolute

このコマンドレットは、パスが絶対パスの場合は $true を返し、相対パスの場合は $false することを示します。 Windows では、絶対パス文字列は、C:HKCU:などのプロバイダー ドライブ指定子で始まる必要があります。 相対パスは、ドット (.) またはドットドット (..) で始まります。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

IsAbsoluteSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Leaf

Leaf パラメーターを使用する場合、Split-Path は、その項目がファイルかディレクトリかに関係なく、指定されたパス文字列内の最後の項目のみを返します。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

LeafSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-LeafBase

このコマンドレットがリーフの基本名のみを返すように指定します。 たとえば、パス C:\Test\Logs\Pass1.logでは、Pass1のみを返します。

このパラメーターは、PowerShell 6.0 で導入されました。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

LeafBaseSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-LiteralPath

分割するパスを指定します。 パスとは異なり、LiteralPath 値は、型指定されたとおりに使用されます。 ワイルドカード文字として解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。

パラメーターのプロパティ

型:

String[]

規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:PSPath, LP

パラメーター セット

LiteralPathSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-NoQualifier

このコマンドレットは、修飾子を指定せずにパスを返します。 FileSystem またはレジストリ プロバイダーの場合、修飾子はプロバイダー パスのドライブ (C:HKCU:など) です。 たとえば、パス C:\Test\Logs\Pass1.logでは、\Test\Logs\Pass1.logのみを返します。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

NoQualifierSet
配置:Named
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Parent

Split-Path は、指定されたパス文字列の親コンテナー部分のみを返します。 Path 文字列に親コンテナーが含まれていない場合、Split-Path は空の文字列を返します。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

ParentSet
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Path

分割するパスを指定します。 ワイルドカード文字を使用できます。 パスにスペースが含まれている場合は、引用符で囲みます。 このコマンドレットへのパスをパイプすることもできます。

パラメーターのプロパティ

型:

String[]

規定値:None
ワイルドカードのサポート:True
DontShow:False

パラメーター セット

ParentSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
LeafSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
LeafBaseSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
ExtensionSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
QualifierSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
NoQualifierSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False
IsAbsoluteSet
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Qualifier

このコマンドレットは、指定したパスの修飾子のみを返します。 FileSystem またはレジストリ プロバイダーの場合、修飾子は、C:HKCU:などのプロバイダー パスのドライブです。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

QualifierSet
配置:1
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Resolve

このコマンドレットは、パス要素を表示する代わりに、結果の分割パスによって参照される項目を表示することを示します。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

CommonParameters

このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。

入力

String

このコマンドレットへのパスを含む文字列をパイプ処理できます。

出力

String

このコマンドレットはテキスト文字列を返します。 Resolve パラメーターを指定すると、項目の場所を説明する文字列が返されます。 FileInfo や RegistryKey オブジェクトなど、項目を表すオブジェクト 返しません。

Boolean

IsAbsolute パラメーターを指定すると、このコマンドレットは ブール 値を返します。

メモ

  • 分割場所パラメーター (修飾子拡張リーフLeafBase、および noQualifier ) は排他的です。 各コマンドで使用できるのは 1 つだけです。

  • Path 名詞 (Path コマンドレット) を含むコマンドレットは、パス名を操作し、すべての PowerShell プロバイダーが解釈できる簡潔な形式で名前を返します。 これらは、パス名のすべてまたは一部を特定の形式で表示するプログラムやスクリプトで使用するように設計されています。 Dirname NormpathRealpathJoin、またはその他のパス マニピュレーター使用する方法で使用します。

  • Path コマンドレットは、複数のプロバイダーと共に使用できます。 これには、FileSystem、レジストリ、および証明書プロバイダーが含まれます。

  • Split-Path は、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用可能なプロバイダーを一覧表示するには、「Get-PSProvider」と入力します。 詳細については、about_Providersを参照してください。