PowerShell Escape Sequences

Escape sequences are used to represent certain characters within a string, which would otherwise not be possible to include. In PowerShell, escape sequences start with a back quote (`), which is then followed by one or more characters.

As previously discussed, a message can be written out to the console using the ‘Write-Host’ cmdlet.

Write-Host "This is a string."

This writes out the message, ‘This is a string’, to the console. As can be seen in the above code, the message is contained in double quotes. In order to get a double quote to actually appear in the message within the console, an escape sequence needs to be used.

Write-Host "This is a string containing `"double quotes`"."

Here, a back quote is placed before the double quote in order to get it to appear in the message.

This is a string containing "double quotes".

As well as using an escape sequence for printable characters, such as double quotes, they can also be used for non-printable characters, such as including a new line within a string.

Write-Host "This is a string containing`na new line."

The escape sequence ‘`n’ is used within this message to force part of it to appear on a new line.

This is a string containing
a new line.

Below is a table containing some of the escape sequences that are available in PowerShell.

`0 The null character. Often used as a record separator.
`a The alert character. Generates a beep when displayed in the console.
`b The backspace character. The previous character remains in the string but is overwritten when displayed in the console.
`e The escape character. Marks the beginning of an ANSI escape sequence such as "`e[2J".
`f A form feed. Creates a page break when printing on most printers.
`n A new line.
`r A carriage return. New lines in PowerShell are indicated entirely by the `n character, so this is rarely required.
`t A horizontal tab.
`u{hex-code} A Unicode character literal. Creates a character represented by the specified hexadecimal Unicode code point, such as 'u{2265} for the greater than or equal to character.
`v A vertical tab.
`any other character The specified character, taken literally, such as `" for a double quote.