Pages

2012/05/14

[PowerShell] 文字列の自動展開

PowerShell の文字列の扱いについて、ちょっと Ruby に似ている面白い挙動がある。
$hoge = "john"
Write-Host "私の名前は $hoge です。"
# 出力
# 私の名前は john です。

Write-Host '私の名前は $hoge です。'
# 出力
# 私の名前は $hoge です。
「 " 」 (ダブルクォーテーション) の場合は、変数名を引用符の中に含めてあっても自動的に展開してくれる。しかし、「 ' 」 (シングルクォーテーション) の場合は、そのまま文字列として出力される。Ruby と違って式 ( #{ } ) で囲む必要はない。
エスケープシーケンスでも、同様の展開が行われる。
$hoge = "john"
Write-Output "私の名前は`n$hoge です。"
# 出力
# 私の名前は
# john です。
覚えておくといいかもしれない。
Related Posts Plugin for WordPress, Blogger...