当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Join-Path (Microsoft.PowerShell.Management)

作者:精品下载站 日期:2024-12-14 02:11:55 浏览:13 分类:玩电脑

Join-Path (Microsoft.PowerShell.Management)


Join-Path

模块 :Microsoft.PowerShell.Management

将路径和子路径合并为单个路径。

句法

Join-Path
    [-Path] <String[]>
    [-ChildPath] <String>
    [[-AdditionalChildPath] <String[]>]
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

描述

Join-Path cmdlet 将路径和子路径合并为单个路径。提供者提供路径分隔符。

示例

示例 1:将路径与子路径组合

PS C:\> Join-Path -Path "path" -ChildPath "childpath"

path\childpath

此命令使用Join-Path 将路径与子路径组合起来。

由于该命令是从 FileSystem 提供程序执行的,因此它提供 \ 分隔符来连接路径。

示例 2:合并已包含目录分隔符的路径

PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"

path\childpath

现有的目录分隔符 \ 已被处理,因此 PathChildPath 之间只有一个分隔符

示例 3:通过将路径与子路径连接来显示文件和文件夹

Join-Path "C:\win*" "System*" -Resolve

此命令显示通过连接 C:\Win\* 路径和 System\* 子路径引用的文件和文件夹。它显示与 Get-ChildItem 相同的文件和文件夹,但它显示每个项目的完全限定路径。在此命令中,省略了 PathChildPath 可选参数名称。

示例 4:将 Join-Path 与 PowerShell 注册表提供程序结合使用

PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve

HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet

此命令显示 HKLM\System 注册表子项中包含 ControlSet 的注册表项。

Resolve 参数尝试解析加入的路径,包括当前提供程序路径 HKLM:\ 中的通配符

示例 5:将多个路径根与子路径组合

Join-Path -Path C:, D:, E:, F: -ChildPath New

C:\New
D:\New
E:\New
F:\New

此命令使用 Join-Path 将多个路径根与子路径组合起来。

笔记

Path 指定的驱动器必须存在,否则该条目的加入将会失败。

示例 6:将文件系统驱动器的根与子路径组合起来

Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"

C:\Subdir
D:\Subdir

此命令将控制台中每个 PowerShell 文件系统驱动器的根与 Subdir 子路径组合在一起。

该命令使用 Get-PSDrive cmdlet 获取文件系统提供程序支持的 PowerShell 驱动器。 ForEach-Object 语句仅选择 PSDriveInfo 对象的 Root 属性,并将其与指定的子路径组合。

输出显示计算机上的 PowerShell 驱动器包含映射到 C:\Program Files 目录的驱动器。

示例 7:组合不定数量的路径

Join-Path a b c d e f g

a\b\c\d\e\f\g

AdditionalChildPath 参数允许连接无限数量的路径。

在此示例中,未使用参数名称,因此“a”绑定到 Path,“b”绑定到 ChildPath,“c-g”绑定到 AdditionalChildPath

参数

-AdditionalChildPath

指定附加到 Path 参数值的附加元素。 ChildPath 参数仍然是强制性的,并且也必须指定。

此参数通过 ValueFromRemainingArguments 属性指定,该属性允许连接无限数量的路径。

此参数是在 PowerShell 6.0 中添加的。

类型 :

String[]

位置:

2

默认值:

None

必需的:

False

接受管道输入:

True

接受通配符:

False

-ChildPath

指定要附加到 Path 参数值的元素。允许使用通配符。尽管参数名称(“ChildPath”)是可选的,但 ChildPath 参数是必需的。

类型 :

String

位置:

1

默认值:

None

必需的:

True

接受管道输入:

True

接受通配符:

True

-Credential

笔记

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

类型 :

PS凭证

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

True

接受通配符:

False

-Path

指定附加子路径的主路径(或多个路径)。允许使用通配符。

Path 的值确定哪个提供程序连接路径并添加路径分隔符。尽管参数名称(“Path”)是可选的,但 Path 参数是必需的。

类型 :

String[]

别名:

PSPath

位置:

0

默认值:

None

必需的:

True

接受管道输入:

True

接受通配符:

True

-Resolve

指示此 cmdlet 应尝试解析来自当前提供程序的联接路径。

  • 如果使用通配符,cmdlet 将返回与连接路径匹配的所有路径。
  • 如果使用no通配符,则当路径不存在时,cmdlet 将出错。
类型 :

SwitchParameter

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

输入

字符串

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

输出

字符串

此 cmdlet 返回一个包含结果路径的字符串。

笔记

包含路径名词的 cmdlet(Path cmdlet)操作路径名称并以所有 PowerShell 提供程序都可以解释的简洁格式返回名称。它们设计用于希望以特定格式显示全部或部分路径名的程序和脚本。像使用 DirnameNormpathRealpathJoin 或其他路径操纵器一样使用它们。

您可以将路径 cmdlet 与多个提供程序一起使用,包括 FileSystemRegistryCertificate 提供程序。

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

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯