如何在 PowerShell 中使用 Split-Path 命令?
Split-Path 用于检索指定路径的一部分,例如父文件夹、子文件夹或文件名。它还可以判断路径是相对路径还是绝对路径。
此命令支持一些参数,这些参数有助于检索指定路径的一部分。假设我们有以下可执行文件路径,我们将看到 Split-Path 命令如何检索父文件夹和子文件夹以及根目录。
'C:\Temp\PsExec.exe'
默认的 Split-Path 命令将检索文件的父文件夹名称。
PS C:\> Split-Path 'C:\Temp\PsExec.exe' C:\Temp
这里默认参数是 -Parent,它检索父文件夹路径。以上命令类似于:
PS C:\> Split-Path 'C:\Temp\PsExec.exe' -Parent C:\Temp
如果您只需要文件名,则使用 -Leaf 参数。
PS C:\> Split-Path 'C:\Temp\PsExec.exe' -Leaf PsExec.exe
要检索根目录,需要使用 -Qualifier 参数。
PS C:\> Split-Path 'C:\Temp\PsExec.exe' -Qualifier C:
如果要检查路径是绝对路径还是相对路径,则使用 -IsAbsolute 参数。
PS C:\> Split-Path 'C:\Temp\PsExec.exe' -IsAbsolute True PS C:\Temp> Split-Path .\PsExec.exe -IsAbsolute False
现在,假设您想要文件夹内的文件名,如果我们编写以下命令,则不会得到预期的输出。
输出
PS C:\> Split-Path C:\Scripts\* -Leaf *
输出结果为 *,命令没有检索文件/文件夹名称。要解决此问题,使用 -Resolve 参数。
Split-Path C:\scripts\* -Leaf -Resolve
输出
DSCTest Lab01 MyModules VS_Installation DscTest.ps1 Servers.txt
您可以看到文件和文件夹名称。同样,如果您想要检索特定扩展名的文件,可以使用 -Leaf 和 -Resolve 两个参数。
PS C:\> Split-Path C:\scripts\*.ps1 -Leaf -Resolve DscTest.ps1
类似地,您可以将 Split-Path 命令应用于注册表。
Split-Path 'HKCU:\Software\Microsoft\Internet Explorer\Control Panel\' HKCU:\Software\Microsoft\Internet Explorer Split-Path 'HKCU:\Software\Microsoft\Internet Explorer\Control Panel\' -Qualifier HKCU: Split-Path 'HKCU:\Software\Microsoft\Internet Explorer\Control Panel\' -Leaf Control Panel
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP