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 cmdlet 仅返回路径的指定部分,例如父文件夹、子文件夹或文件名。 它还可以获取拆分路径引用的项,并判断路径是相对路径还是绝对路径。

可以使用此 cmdlet 获取或仅提交路径的选定部分。

示例

示例 1:获取路径的限定符

PS C:\> Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier
HKCU:

此命令仅返回路径的限定符。 限定符是驱动器。

示例 2:显示文件名

PS C:\> Split-Path -Path "C:\Test\Logs\*.log" -Leaf -Resolve
Pass1.log
Pass2.log
...

此命令显示拆分路径引用的文件。 由于此路径拆分为最后一项(也称为叶),因此该命令仅显示文件名。

Resolve 参数告知 拆分路径 显示拆分路径引用的项,而不是显示拆分路径。

与所有 拆分路径 命令一样,此命令返回字符串。 它不返回表示文件的 fileInfo 对象

示例 3:获取父容器

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

此命令仅返回路径的父容器。 由于它不包含指定拆分的任何参数,因此 拆分路径 使用拆分位置默认值,即父

示例 4:确定路径是否为绝对路径

PS C:\> 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:使用管道拆分路径

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

此命令使用管道运算符 (|) 将路径发送到 Split-Path。 该路径用引号括起来,以指示它是单个标记。

参数

-Credential

注意

任何随 PowerShell 一起安装的提供程序都不支持此参数。 若要模拟其他用户,或在运行此 cmdlet 时提升凭据,请使用 Invoke-Command

类型:PSCredential
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-IsAbsolute

指示此 cmdlet 返回$True路径是否为绝对路径,如果路径相对,则返回$False。 绝对路径的长度大于零,不使用点(.)来指示当前路径。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Leaf

指示此 cmdlet 仅返回路径中的最后一项或容器。 例如,在路径 C:\Test\Logs\Pass1.log中,它仅返回Pass1.log。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-LiteralPath

指定要拆分的路径。 与 路径不同,LiteralPath 的值与类型化完全相同。 不会将任何字符解释为通配符。 如果路径包含转义字符,请将它括在单引号中。 单引号告知 PowerShell 不要将任何字符解释为转义序列。

类型:String[]
别名:PSPath
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-NoQualifier

指示此 cmdlet 返回没有限定符的路径。 对于 FileSystem 或注册表提供程序,限定符是提供程序路径的驱动器,例如 C: 或 HKCU:。 例如,在路径 C:\Test\Logs\Pass1.log中,它仅返回 \Test\Logs\Pass1.log。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Parent

指示此 cmdlet 仅返回项或路径指定的容器的父容器。 例如,在路径 C:\Test\Logs\Pass1.log中,它返回 C:\Test\Logs。 Parent 参数是默认的拆分位置参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Path

指定要拆分的路径。 允许使用通配符。 如果路径包含空格,请将它括在引号中。 还可以通过管道传递此 cmdlet 的路径。

类型:String[]
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:True

-Qualifier

指示此 cmdlet 仅返回指定路径的限定符。 对于 FileSystem 或注册表提供程序,限定符是提供程序路径的驱动器,例如 C: 或 HKCU:。

类型:SwitchParameter
Position:1
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Resolve

指示此 cmdlet 显示由生成的拆分路径引用的项,而不是显示路径元素。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseTransaction

在活动事务中包含该命令。 此参数仅在事务正在进行时有效。 有关详细信息,请参阅about_Transactions。

类型:SwitchParameter
别名:usetx
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

String

可以通过管道传递包含此 cmdlet 路径的字符串。

输出

System.String, System.Boolean

拆分路径 返回文本字符串。 指定 Resolve 参数时,Split-Path 返回描述项位置的字符串;它不返回表示项的对象,如 FileInfoRegistryKey 对象。

指定 IsAbsolute 参数时,Split-Path 返回 布尔值 值。

备注

  • 拆分位置参数(限定符NoQualifier)都是独占的。 每个命令中只能使用一个。

    包含 Path 名词(Path cmdlet)的 cmdlet 使用路径名称,并返回所有 PowerShell 提供程序可以解释的简洁格式的名称。 它们旨在用于要以特定格式显示路径名称的所有或部分的程序和脚本。 使用它们的方式使用 DirnameNormpathRealpathJoin或其他路径操控器。

    可以将 Path cmdlet 与多个提供程序一起使用。 其中包括 FileSystem、注册表和证书提供程序。

    拆分路径 旨在处理任何提供程序公开的数据。 若要列出会话中可用的提供程序,请键入 Get-PSProvider。 有关详细信息,请参阅about_Providers。