文字列

PowerShellで文字列を表現するためには、シングルクォート(’)やダブルクオート(”)を使います

シングルクォート(’)とダブルクオート(”)

シングルクォートとダブルクオートには以下のような違いがあります。
シングルクォート:文字列そのまま
ダブルクオート:変数が展開されます

PS> $num = 1
PS> 'Number $num'
Number $num
PS> "Number $num"
Number 1

${}

変数のあとに空白がない場合には、${}を使用します。

PS> $str = "Hello "
PS> ${str}World
Hello World
PS> $strWorld

$()

ダブルクォーテーション内で$()を使うと、カッコの中身が式として扱われます。
XMLのパラメーターを文字列展開したい時などに便利です。

Example

ターミナル

PS> "$(2+3)"
5
PS> $xml = [xml](Get-Content .\XML.xml)
PS> "$xml.parameter" # ドットのせいで期待した変数を展開できない
System.Xml.XmlDocument.parameter
PS> "$($xml.parameter)" # $()を使えば展開できる
パラメーター

XML.xmlの中身

<?xml version="1.0" encoding="UTF-8"?>
<parameter>パラメーター</parameter>

ヒア文字列

複数行の文字列の記述には、ヒア文字列を使うと便利です。
変数を展開する場合には、@""@
変数を展開しない場合は、@’’@

PS> $text = @"
>> This
>> is
>> a
>> pen
>> "@
>>
PS> $text
This
is
a
pen

YouTube

動画による説明はこちら。


スポンサーリンク