Concatenating a variable and a string literal without a space in PowerShell Concatenating a variable and a string literal without a space in PowerShell powershell powershell

Concatenating a variable and a string literal without a space in PowerShell


Another option and possibly the more canonical way is to use curly braces to delineate the name:

$MyVariable = "Some text"Write-Host "${MyVariable}NOSPACES"

This is particular handy for paths e.g. ${ProjectDir}Bin\$Config\Images. However, if there is a \ after the variable name, that is enough for PowerShell to consider that not part of the variable name.


You need to wrap the variable in $()

For example, Write-Host "$($MyVariable)NOSPACES"


Write-Host $MyVariable"NOSPACES"

Will work, although it looks very odd... I'd go for:

Write-Host ("{0}NOSPACES" -f $MyVariable)

But that's just me...