PowerShell Genie

Join-Path

Use Join-Path to combine path segments into one path using the correct separator for the platform.

Command 1 min read Windows PowerShell 5.1 and PowerShell 7

Documentation: Microsoft Learn — Join-Path

Syntax

1PS> Join-Path [-Path] <String[]> [-ChildPath] <String> [-AdditionalChildPath <String[]>] [-Resolve] [<CommonParameters>]
See the command anatomy

Read the command and its supplied arguments. This example requires real PowerShell or its module; this diagram does not execute it.

Join-Path [-Path] <String[]> [-ChildPath] <String> [-AdditionalChildPath <String[]>] [-Resolve] [<CommonParameters>]
  1. Stage 1Join-Path-Path -ChildPath -AdditionalChildPath -Resolve

    Try it

    Windows PowerShell

    PowerShell example · browser support is limited.

    Execution scope: The full example below requires PowerShell outside this browser. You can edit this runner to use the supported practice commands; unsupported syntax returns an explanation.

    Interactive simulation · fictional data

    Examples

    Run Join-Path

    1PS> Join-Path 'C:\Scripts' 'Archive'
    Show reference output

    Sample output · fictional data, shaped like the real thing

    C:\Scripts\Archive

    Run Join-Path (2)

    1PS> Join-Path 'C:\Scripts' 'Archive' 'old.ps1'
    Show reference output

    Sample output · fictional data, shaped like the real thing

    C:\Scripts\Archive\old.ps1

    Join-Path -Resolve

    1PS> Join-Path 'C:\Scripts' '*.ps1' -Resolve
    Show reference output

    Sample output · fictional data, shaped like the real thing

    C:\Scripts\Backup-Files.ps1
    C:\Scripts\Health-Check.ps1

    Parameters

    Parameter definitions:

    • -Path
    • -ChildPath
    • -AdditionalChildPath
    • -Resolve

    Join-Path on Microsoft Learn

    Practical use and troubleshooting

    Practical scenario: Use Join-Path when you need to combine path segments into one path using the correct separator for the platform. Start with one identified target and inspect the returned values before extending the operation to a list. Keep the identity in your report so you can trace each result back to the object or path that produced it.

    Common error and fix: Unexpected separators or malformed paths can come from manual string concatenation. Pass the parent and child separately and check the resulting path with Test-Path before accessing the item. In an unattended script, capture this failure with its original error record and record which target failed. An empty result and an unsuccessful query must remain distinguishable in the final report.

    See also: Split-Path. Join-Path combines a parent with a child path using the provider; Split-Path extracts parts of a path. Neither command proves that a file exists. Read the linked command before substituting it; similar names do not imply identical inputs or output.

    Join-Path reference on Microsoft Learn

    Recap

    Join-Path Use Join-Path to combine path segments into one path using the correct separator for the platform.

    Next: Resolve-Path
    Genie guideJoin-Path

    Use Join-Path to combine path segments into one path using the correct separator for the platform. The console below is pre-loaded — run it, then change a value and run it again.