次の方法で共有


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 、親フォルダー、サブフォルダー、ファイル名など、パスの指定された部分のみを返します。 また、分割されたパスで参照されている項目を取得したり、パスが相対パスか絶対パスかを判断したりすることもできます。

このコマンドレットを使用すると、選択したパスの一部だけを取得または送信できます。

例 1: パスの修飾子を取得する

Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier

HKCU:

このコマンドは、パスの修飾子のみを返します。 修飾子はドライブです。

例 2: ファイル名を表示する

Split-Path -Path "C:\Test\Logs\*.log" -Leaf -Resolve

Pass1.log
Pass2.log
...

このコマンドを実行すると、分割されたパスが参照しているファイルが表示されます。 このパスはリーフとも呼ばれる最後の項目に分割されるため、コマンドはファイル名のみを表示します。

Resolve パラメーターは、Split-Path分割パスを表示するのではなく、分割パスが参照する項目を表示するように指示します。

すべての Split-Path コマンドと同様に、このコマンドは文字列を返します。 ファイルを表す FileInfo オブジェクトは返されません。

例 3: 親コンテナーを取得する

Split-Path -Parent "C:\WINDOWS\system32\WindowsPowerShell\V1.0\about_*.txt"

C:\WINDOWS\system32\WindowsPowerShell\V1.0

このコマンドは、パスの親コンテナーだけを返します。 分割を指定するパラメーターは含まれていないため、 Split-Path 分割場所の既定値 ( Parent) が使用されます。

例 4: パスが絶対パスかどうかを判断する

Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute

False

このコマンドは、パスが相対パスと絶対パスのどちらであるかを特定します。 この場合、パスはドット (.) で表される現在のフォルダーに対する相対パスであるため、 は を返します $False

例 5: 場所を指定したパスに変更する

PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Documents and Settings\User01\My Documents\WindowsPowerShell>

このコマンドは、PowerShell プロファイルを含むフォルダーに場所を変更します。

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

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

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

C:\Documents and Settings\User01\My Documents

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

パラメーター

-Credential

注意

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

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Extension

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

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

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-IsAbsolute

パスが絶対$Falseパスで、相対パスの場合は、このコマンドレットが を返$Trueすかどうかを示します。 絶対パスの長さが 0 より大きく、現在のパスを示すためにドット (.) を使用しません。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Leaf

このコマンドレットは、パス内の最後の項目またはコンテナーのみを返します。 たとえば、 パス C:\Test\Logs\Pass1.logでは、 のみが Pass1.log返されます。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LeafBase

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

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

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

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

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoQualifier

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

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Parent

このコマンドレットは、パスで指定された項目またはコンテナーの親コンテナーのみを返します。 たとえば、 パス C:\Test\Logs\Pass1.logでは を返します C:\Test\LogsParent パラメーターは、既定の分割場所パラメーターです。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Path

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

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Qualifier

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

Type:SwitchParameter
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Resolve

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

String

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

出力

String

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

Boolean

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

メモ

  • 分割場所パラメーター (QualifierParentExtensionLeafLeafBaseNoQualifier) は排他的です。 各コマンドでいずれか 1 つだけを使用できます。

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

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

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