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
。 路径用引号引起以指示它是一个标记。
-Credential
随同 PowerShell 一起安装的任何提供程序都不支持此参数。 若要模拟其他用户,或在运行此 cmdlet 时提升凭据,请使用 Invoke-Command。
String
此 cmdlet 返回文本字符串。 指定 Resolve 参数时,它将返回用于描述项位置的字符串。 它不返回表示项的对象,例如 FileInfo 或 RegistryKey 对象。
Boolean
指定 IsAbsolute 参数时,此 cmdlet 会返回一个布尔值。
拆分位置参数(Qualifier、Parent、Extension、Leaf、LeafBase 和 NoQualifier)是互斥的。 在每个命令中只能使用一个参数。
包含 Path 名词的 cmdlet (Path cmdlet) 使用路径名称,以所有 PowerShell 提供程序都能够解释的简明格式返回名称。 这些 cmdlet 用于需要在其中以特定格式显示全部或部分路径名称的程序或脚本中。 你可以按照使用 Dirname、Normpath、Realpath、Join 或其他路径操作程序的方式使用这些 cmdlet。
可以将 Path cmdlet 与多个提供程序一起使用。 其中包括文件系统、注册表和证书提供程序。
Split-Path
旨在处理任何提供程序公开的数据。 若要列出会话中可用的提供程序,请键入 Get-PSProvider
。 有关详细信息,请参阅 about_Providers。
即将推出:在整个 2024 年,我们将逐步取消以“GitHub 问题”作为内容的反馈机制,并将其替换为新的反馈系统。 有关详细信息,请参阅:https://aka.ms/ContentUserFeedback。
提交和查看相关反馈