Cómo unir rutas para combinar más de dos cadenas en una ruta de archivo en PowerShell
-
Usa el valor
Join-Path
para combinar más de dos cadenas en una ruta de archivo en PowerShell - Conclusión

El cmdlet Join-Path
permite al usuario combinar cadenas en una sola ruta. A veces, puede ser necesario combinar rutas para crear una sola ruta al trabajar en PowerShell.
Es aquí donde el cmdlet Join-Path
entra en acción. Muchas rutas secundarias se pueden combinar o agregar a la ruta principal para crear una sola ruta.
El parámetro -Path
especifica la ruta principal a la cual se agrega la ruta secundaria. El valor de -Path
determina qué proveedor une las rutas y añade los delimitadores de ruta.
Proporciona el delimitador \
para unir las rutas. El parámetro -ChildPath
especifica las rutas a agregar al valor del parámetro -Path
.
Por ejemplo, el siguiente comando utiliza Join-Path
para combinar la ruta principal hello
y una ruta secundaria world
.
Join-Path -Path "hello" -ChildPath "world"
Salida:
El cmdlet Join-Path
acepta solo dos entradas de cadena o un parámetro -ChildPath
. Usando el comando único, no puedes usar Join-Path
para combinar más de dos cadenas en una ruta de archivo.
Necesitarás usar múltiples declaraciones Join-Path
juntas para combinar más de dos cadenas en una ruta de archivo en PowerShell.
Usa el valor Join-Path
para combinar más de dos cadenas en una ruta de archivo en PowerShell
Dado que el valor de ruta Join-Path
puede enviar al pipeline, puedes canalizar múltiples declaraciones Join-Path
juntas para combinar más de dos cadenas en una ruta de archivo.
Por ejemplo, el siguiente código combina las cuatro cadenas y crea una sola ruta C:\content\software\PowerShell
.
Join-Path -Path "C:" -ChildPath "content" | Join-Path -ChildPath "software" | Join-Path -ChildPath "PowerShell"
En este fragmento de código, estás utilizando el cmdlet Join-Path
múltiples veces para construir gradualmente una ruta de archivo. Con cada llamada a Join-Path
, estás tomando la ruta actual y extendiéndola añadiendo otro segmento.
Esto se hace canalizando la salida de cada operación Join-Path
a la siguiente, construyendo esencialmente la ruta de archivo final pieza por pieza. El parámetro -ChildPath
es clave aquí, ya que especifica el segmento adicional a añadir a la ruta existente.
Como resultado, el código crea efectivamente una ruta de archivo completa al combinar la ruta base C:
con las cadenas subsiguientes content
, software
y PowerShell
.
Salida:
Combinando múltiples rutas de archivos con una ruta secundaria en PowerShell
El propósito principal de combinar múltiples rutas con una ruta secundaria es crear rutas de archivo completamente calificadas en PowerShell. Al entender cómo combinar múltiples rutas con una ruta secundaria, puedes construir dinámicamente rutas de archivo de manera eficiente, mejorando la flexibilidad y legibilidad de tus scripts de PowerShell.
Join-Path -Path "Path1\", "Path2\" -ChildPath "Folder\File.txt"
En este fragmento de código, estás utilizando el cmdlet Join-Path
para fusionar dos rutas (Path1
y Path2
) con una ruta secundaria (Folder\File.txt
). Al pasar una matriz de rutas raíz a través del parámetro -Path
y especificar la ruta secundaria con -ChildPath
, estás creando rutas de archivo completamente calificadas.
En consecuencia, la salida presenta las rutas de archivo completas formadas al combinar cada ruta con la ruta secundaria proporcionada. Este método ofrece una forma sencilla de integrar múltiples rutas en una sola ruta de archivo, mejorando la versatilidad de tus scripts de PowerShell.
Salida:
Combinando raíces de un sistema de archivos con una ruta secundaria en PowerShell
Al tratar con múltiples raíces de ruta y una ruta secundaria, el cmdlet Join-Path
, en conjunto con la entrada de matriz y el parámetro -ChildPath
, proporciona una forma eficiente de fusionar componentes de ruta dispares en una ruta de archivo cohesiva.
En el contexto del cmdlet Get-PSDrive
, el parámetro -PSProvider
filtra las unidades en función del proveedor al que pertenecen.
Get-PSDrive -PSProvider filesystem | ForEach-Object { $_.root } | Join-Path -ChildPath "SubFolder"
En este fragmento de código, estás utilizando el cmdlet Get-PSDrive
para obtener las rutas raíz de todas las unidades del sistema de archivos. Luego, canalizas los resultados a ForEach-Object
para extraer cada ruta raíz.
Estas rutas raíz se pasan posteriormente a Join-Path
junto con la ruta secundaria SubFolder
. El cmdlet Join-Path
combina cada ruta raíz con la ruta secundaria, creando rutas de archivo completamente calificadas.
Este método te permite generar dinámicamente rutas de archivo en función de las rutas raíz de las unidades actualmente accesibles en tu sistema.
Salida:
Conclusión
En conclusión, el cmdlet Join-Path
en PowerShell sirve como una herramienta valiosa para combinar cadenas en una sola ruta de archivo. Si bien normalmente acepta solo dos entradas de cadena o un parámetro -ChildPath
, puedes superar esta limitación encadenando múltiples declaraciones Join-Path
juntas.
Este artículo exploró varios métodos para combinar múltiples cadenas en una ruta de archivo usando Join-Path
, incluyendo el uso del cmdlet múltiples veces en sucesión y canalizando la salida de una operación Join-Path
en otra. Al entender estas técnicas, puedes construir dinámicamente rutas de archivo basadas en diferentes escenarios y requisitos en tus scripts de PowerShell.
Artículo relacionado - PowerShell String
- Cómo encontrar la posición de una subcadena en PowerShell
- Cómo reemplazar un texto en un archivo usando PowerShell
- Cómo verificar si una cadena no es NULL o VACÍA en PowerShell
- Comprobar si la cadena está vacía en PowerShell
- Cómo convertir una cadena segura a texto sin formato en PowerShell
- Cómo eliminar espacios de una variable usando PowerShell