Compartir a través de


Join-Path

Combina una ruta de acceso y una ruta secundaria en una sola ruta de acceso.

Sintaxis

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

Description

El cmdlet Join-Path combina una ruta de acceso y una ruta de acceso secundaria en una sola ruta de acceso. El proveedor proporciona los delimitadores de ruta de acceso.

Ejemplos

Ejemplo 1: Combinar una ruta de acceso con una ruta de acceso secundaria

Join-Path -Path "path" -ChildPath "childpath"

path\childpath

Este comando usa Join-Path para combinar una ruta de acceso con una ruta secundaria.

Dado que el comando se ejecuta desde el proveedor de FileSystem, proporciona el delimitador de \ para unir las rutas de acceso.

Ejemplo 2: Combinación de rutas de acceso que ya contienen separadores de directorio

Join-Path -Path "path\" -ChildPath "\childpath"

path\childpath

Los separadores de directorio existentes \ se controlan, por lo que solo hay un separador entre ruta de acceso y ChildPath.

Ejemplo 3: Mostrar archivos y carpetas uniendo una ruta de acceso con una ruta de acceso secundaria

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

Este comando muestra los archivos y carpetas a los que se hace referencia mediante la combinación de la ruta de acceso C:\Win\* y la ruta de acceso secundaria System\*. Muestra los mismos archivos y carpetas que Get-ChildItem, pero muestra la ruta de acceso completa a cada elemento. En este comando, se omiten los de ruta de acceso y ChildPath nombres de parámetro opcionales.

Ejemplo 4: Uso de Join-Path con el proveedor del Registro de PowerShell

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

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

Este comando muestra las claves del Registro en la subclave del Registro HKLM\System que incluyen ControlSet.

El parámetro Resolve, intenta resolver la ruta de acceso combinada, incluidos los caracteres comodín de la ruta de acceso del proveedor actual HKLM:\

Ejemplo 5: Combinar varias raíces de ruta de acceso con una ruta de acceso secundaria

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

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

Este comando usa Join-Path para combinar varias raíces de ruta de acceso con una ruta de acceso secundaria.

Nota

Las unidades especificadas por ruta de acceso deben existir o se producirá un error en la combinación de esa entrada.

Ejemplo 6: Combinar las raíces de una unidad del sistema de archivos con una ruta de acceso secundaria

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

C:\Subdir
D:\Subdir

Este comando combina las raíces de cada unidad del sistema de archivos de PowerShell en la consola con la ruta de acceso secundaria Subdir.

El comando usa el cmdlet Get-PSDrive para obtener las unidades de PowerShell compatibles con el proveedor FileSystem. La instrucción ForEach-Object selecciona solo la propiedad raíz de los objetos de PSDriveInfo y lo combina con la ruta de acceso secundaria especificada.

La salida muestra que las unidades de PowerShell del equipo incluían una unidad asignada al directorio C:\Program Files.

Ejemplo 7: Combinar un número indefinido de rutas de acceso

Join-Path a b c d e f g

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

El parámetro AdditionalChildPath permite unir un número ilimitado de rutas de acceso.

En este ejemplo, no se usa ningún nombre de parámetro, por lo que "a" se enlaza a Ruta de acceso, "b" a ChildPath y "c-g" para AdditionalChildPath.

Parámetros

-AdditionalChildPath

Especifica elementos adicionales que se van a anexar al valor del parámetro path de. El parámetro ChildPath sigue siendo obligatorio y también debe especificarse. Este parámetro se especifica con la propiedad ValueFromRemainingArguments, que permite unir un número indefinido de rutas de acceso.

Este parámetro se agregó en PowerShell 6.0.

Tipo:String[]
Posición:2
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-ChildPath

Especifica los elementos que se van a anexar al valor del parámetro Path. Se permiten caracteres comodín.

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-Credential

Nota

Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar las credenciales al ejecutar este cmdlet, use Invoke-Command.

Tipo:PSCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Path

Especifica la ruta de acceso principal (o rutas de acceso) a la que se anexa la ruta de acceso secundaria. El valor de Path determina qué proveedor combina las rutas de acceso y agrega los delimitadores de ruta de acceso. Se permiten caracteres comodín.

Tipo:String[]
Alias:PSPath
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-Resolve

Indica que este cmdlet debe intentar resolver la ruta de acceso combinada del proveedor actual.

  • Si usa caracteres comodín, el cmdlet devuelve todas las rutas de acceso que coinciden con la ruta de acceso combinada.
  • Si no usa caracteres comodín, el cmdlet devuelve un error si la ruta de acceso no existe.
Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede canalizar una cadena que contenga una ruta de acceso a este cmdlet.

Salidas

String

Este cmdlet devuelve una cadena que contiene la ruta de acceso resultante.

Notas

Los cmdlets que contienen el nombre 'Path' manipulan las rutas y devuelven los nombres en un formato conciso que todos los proveedores de PowerShell pueden interpretar. Están diseñados para usarse en los que desea mostrar toda o parte de una ruta de acceso en un formato determinado. Úselos como usaría Dirname, Normpath, Realpath, Joinu otros manipuladores de rutas de acceso.

Puede usar los cmdlets de ruta de acceso con varios proveedores, incluidos los proveedores de FileSystem, Registryy Certificate.

Este cmdlet está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider. Para obtener más información, vea about_Providers.