PowerShell 拆分目录路径

Rohan Timalsina 2023年1月30日
  1. 在 PowerShell 中使用 Split-Path Cmdlet 拆分目录或文件路径
  2. 在 PowerShell 中使用 Split() 方法来分割目录或文件路径
PowerShell 拆分目录路径

在 PowerShell 中使用路径时,有时你可能需要拆分目录或文件路径。PowerShell 有一个方便的 cmdlet Split-Path,可让你将路径拆分为父路径、子文件夹或文件名。

本教程将教你在 PowerShell 中拆分目录或文件路径。

在 PowerShell 中使用 Split-Path Cmdlet 拆分目录或文件路径

Split-Path cmdlet 在 PowerShell 中返回一个给定路径的特定部分。路径的一部分只能是父文件夹、子文件夹、文件名或文件扩展名。

默认情况下,Split-Path 返回路径的父文件夹。以下示例将显示 C:\Windows\System32notepad.exe 的父文件夹。

命令:

Split-Path -Path "C:\Windows\System32\notepad.exe"

输出:

C:\Windows\System32

-Qualifier 参数显示路径的限定符。限定符是路径的驱动器,例如 C:D:

命令:

Split-Path -Path "C:\Windows\System32\notepad.exe" -Qualifier

输出:

C:

-Leaf 参数打印路径的最后一项。

命令:

Split-Path -Path "C:\Windows\System32\notepad.exe" -Leaf

输出:

notepad.exe

要显示叶子的基本名称,请使用 LeafBase 参数。它返回不带扩展名的文件名。

命令:

Split-Path -Path "C:\Windows\System32\notepad.exe" -LeafBase

输出:

notepad

你可以使用 -Extension 参数来仅获取叶扩展。

命令:

Split-Path -Path "C:\Windows\System32\notepad.exe" -Extension

输出:

.exe

你还可以使用 Split-Path 拆分注册表路径的路径。

命令:

Split-Path HKCU:\Software\Microsoft

输出:

HKCU:\Software

在 PowerShell 中使用 Split() 方法来分割目录或文件路径

要将字符串划分为数组,请使用 Split() 方法。你可以使用此方法将路径字符串拆分为数组。

然后,你可以使用 Select-Object 选择数组中的特定位置并将它们连接为路径。以下示例将路径 C:\Windows\System32\notepad.exe 拆分为 C:\Windows

命令:

$path = "C:\Windows\System32\notepad.exe".Split("\") | Select-Object -First 2
$path -join "\"

split 方法在上述脚本中的分隔符 \ 上拆分路径字符串。然后通过管道传送到 Select-Object,仅从数组中选择前两个对象。

第一个命令的结果存储在变量 $path 中。第二个命令将 $path 中的结果对象与\ 连接起来并创建一个新路径。

输出:

C:\Windows

以下示例将路径 C:\Windows\System32\notepad.exe 拆分为 System32\notepad.exe

命令:

$path = "C:\Windows\System32\notepad.exe".Split("\") | Select-Object -Last 2
$path -join "\"

输出:

System32\notepad.exe

假设你需要路径中的第二个和最后一个元素。然后你可以使用 -Index 参数选择数组中的特定位置。

-Index 参数选择索引 13。数组中的索引值从 0 开始。

命令:

$path = "C:\Windows\System32\notepad.exe".Split("\") | Select-Object -Index 1,3
$path -join "\"

输出:

Windows\notepad.exe

在本文中,我们学习了几个在 PowerShell 中拆分路径的示例。我们还向你展示了如何使用 \ 分隔符加入路径。

作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

相关文章 - PowerShell Path