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>
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<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

PS C:\> 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 \ para unir las rutas de acceso.

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

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

path\childpath

Los separadores de directorio existentes \ se controlan, por lo que solo hay un separador entre Path 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 Path 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 Path 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.

Parámetros

-ChildPath

Especifica los elementos que se van a anexar al valor del parámetro Path. Se permiten caracteres comodín. Se requiere el parámetro ChildPath, aunque el nombre del parámetro ("ChildPath") es opcional.

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. Se permiten caracteres comodín.

El valor de Path determina qué proveedor combina las rutas de acceso y agrega los delimitadores de ruta de acceso. Se requiere el parámetro Path, aunque el nombre del parámetro ("Path") es opcional.

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 se usan caracteres comodín, el cmdlet devuelve todas las rutas de acceso que coinciden con la ruta de acceso combinada.
  • Si no se usa ningún carácter comodín, el cmdlet producirá 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

-UseTransaction

Incluye el comando en la transacción activa. Este parámetro solo es válido cuando una transacción está en curso. Para obtener más información, vea about_Transactions.

Tipo:SwitchParameter
Alias:usetx
Posición:Named
Valor predeterminado:False
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 (cmdlets path) manipulan los nombres de ruta de acceso y devuelven los nombres en un formato conciso que todos los proveedores de PowerShell pueden interpretar. Están diseñados para su uso en programas y scripts en los que desea mostrar todo o parte de un nombre de 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.