PowerShell – 値以外の情報を変数に格納して扱う

Windows PowerShell では、変数に値以外の情報も格納できます。

プロパティ名を変数に入れて扱う

$today = Get-Date
$y = "Year"
$m = "Month"
$d = "Day"
$today.$y
$today.$m
$today.$d

※変数に代入して扱えるのは、プロパティだけのようで、メソッドはできないようです。

クラス情報を変数に入れて扱う

クラスの入力の手間は省けますが、スタティックプロパティやメソッドの入力時にインテリセンスが機能しません。

$STT = [System.Threading.Thread]
$c = $STT::CurrentThread.CurrentCulture
$STT::CurrentThread.CurrentCulture = "zh-TW"
Get-Date
$STT::CurrentThread.CurrentCulture = $c
Get-Date