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

You can also use a back tick ` as below:

Write-Host "$MyVariable`NOSPACES"

You need to wrap the variable in $()

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


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.


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...