Come unire il percorso per combinare più di due stringhe in un percorso di file in PowerShell
-
Utilizzare il valore
Join-Path
per combinare più di due stringhe in un percorso file in PowerShell - Conclusione

Il cmdlet Join-Path
consente all’utente di combinare stringhe in un singolo percorso. A volte, potrebbe essere necessario combinare percorsi per creare un singolo percorso quando si lavora in PowerShell.
È qui che il cmdlet Join-Path
entra in azione. Molti percorsi secondari possono essere combinati o aggiunti al percorso principale per creare un singolo percorso.
Il parametro -Path
specifica il percorso principale a cui viene aggiunto il percorso secondario. Il valore -Path
determina quale provider unisce i percorsi e aggiunge i delimitatori di percorso.
Fornisce il delimitatore \
per unire i percorsi. Il parametro -ChildPath
specifica i percorsi da aggiungere al valore del parametro -Path
.
Ad esempio, il seguente comando utilizza Join-Path
per combinare il percorso principale hello
e un percorso secondario world
.
Join-Path -Path "hello" -ChildPath "world"
Uscita:
Il cmdlet Join-Path
accetta solo due input di stringa o un parametro -ChildPath
. Utilizzando il comando singolo, non è possibile utilizzare Join-Path
per combinare più di due stringhe in un percorso file.
È necessario utilizzare più istruzioni Join-Path
insieme per combinare più di due stringhe in un percorso file in PowerShell.
Utilizzare il valore Join-Path
per combinare più di due stringhe in un percorso file in PowerShell
Poiché il valore del percorso Join-Path
può essere inviato al pipe, è possibile unire più istruzioni Join-Path
insieme per combinare più di due stringhe in un percorso file.
Ad esempio, il seguente codice combina tutte e quattro le stringhe e crea un singolo percorso C:\content\software\PowerShell
.
Join-Path -Path "C:" -ChildPath "content" | Join-Path -ChildPath "software" | Join-Path -ChildPath "PowerShell"
In questo frammento di codice, stai utilizzando il cmdlet Join-Path
più volte per costruire gradualmente un percorso file. Con ogni chiamata a Join-Path
, stai prendendo il percorso corrente e ampliandolo aggiungendo un altro segmento.
Questo avviene inviando l’output di ogni operazione Join-Path
a quella successiva, costruendo essenzialmente il percorso file finale pezzo dopo pezzo. Il parametro -ChildPath
è fondamentale qui, poiché specifica il segmento aggiuntivo da aggiungere al percorso esistente.
Di conseguenza, il codice crea efficacemente un percorso file completo combinando il percorso di base C:
con le stringhe successive content
, software
e PowerShell
.
Uscita:
Combinare più percorsi file con un percorso secondario in PowerShell
Lo scopo principale di combinare più percorsi con un percorso secondario è creare percorsi file completamente qualificati in PowerShell. Comprendendo come combinare più percorsi con un percorso secondario, puoi costruire in modo efficiente percorsi file dinamicamente, migliorando la flessibilità e la leggibilità dei tuoi script PowerShell.
Join-Path -Path "Path1\", "Path2\" -ChildPath "Folder\File.txt"
In questo frammento di codice, stai utilizzando il cmdlet Join-Path
per unire due percorsi (Path1
e Path2
) con un percorso secondario (Folder\File.txt
). Passando un array di percorsi radice attraverso il parametro -Path
e specificando il percorso secondario con -ChildPath
, stai creando percorsi file completamente qualificati.
Di conseguenza, l’uscita presenta i percorsi file completi formati combinando ciascun percorso con il percorso secondario fornito. Questo metodo offre un modo semplice per integrare più percorsi in un singolo percorso file, migliorando la versatilità dei tuoi script PowerShell.
Uscita:
Combinare radici di un’unità del file system con un percorso secondario in PowerShell
Quando si tratta di più radici di percorso e un percorso secondario, il cmdlet Join-Path
, in combinazione con input di array e il parametro -ChildPath
, fornisce un modo efficiente per unire componenti di percorso disparati in un percorso file coeso.
Nel contesto del cmdlet Get-PSDrive
, il parametro -PSProvider
filtra le unità in base al provider a cui appartengono.
Get-PSDrive -PSProvider filesystem | ForEach-Object { $_.root } | Join-Path -ChildPath "SubFolder"
In questo frammento di codice, stai utilizzando il cmdlet Get-PSDrive
per recuperare i percorsi radice di tutte le unità del file system. Quindi, stai inviando i risultati a ForEach-Object
per estrarre ciascun percorso radice.
Questi percorsi radice vengono successivamente passati a Join-Path
insieme al percorso secondario SubFolder
. Il cmdlet Join-Path
combina ciascun percorso radice con il percorso secondario, creando percorsi file completamente qualificati.
Questo metodo ti consente di generare dinamicamente percorsi file in base ai percorsi radice delle unità attualmente accessibili sul tuo sistema.
Uscita:
Conclusione
In conclusione, il cmdlet Join-Path
in PowerShell funge da strumento prezioso per combinare stringhe in un singolo percorso file. Sebbene accetti generalmente solo due input di stringa o un parametro -ChildPath
, puoi superare questa limitazione concatenando più istruzioni Join-Path
insieme.
Questo articolo ha esplorato vari metodi per combinare più stringhe in un percorso file utilizzando Join-Path
, inclusi l’utilizzo del cmdlet più volte di seguito e l’invio dell’output di un’operazione Join-Path
in un’altra. Comprendendo queste tecniche, puoi costruire dinamicamente percorsi file basati su diversi scenari e requisiti nei tuoi script PowerShell.
Articolo correlato - PowerShell String
- Array di stringhe in PowerShell
- Come controllare se un file contiene una stringa specifica utilizzando PowerShell
- Come controllare se una stringa non è NULL o VUOTA in PowerShell
- Come convertire un oggetto array in una stringa in PowerShell
- Come convertire una stringa sicura in testo normale in PowerShell
- Come estrarre una sottostringa PowerShell da una stringa