PowerShell Hash Tables
help about_Hash_Tables
哈希表(hash table),又名字典(dictionary),关联数组(associative array)。
创建哈希表
$hash = @{ Number = 1; Shape = "Square"; Color = "Blue"}
$hash = @{
Number = 1
Shape = "Square"
Color = "Blue"
}
键值对用 ;
或换行符隔开。
有序字典
哈希表键名的顺序不确定,有序字典(ordered dictionary)的键名按添加的顺序排列:
$dict = [ordered]@{ Number = 1; Shape = "Square"; Color = "Blue"}
$dict.keys
可以将有序字典转为哈希表,反之不可以:
[hashtable]$hash = $dict
常见操作
哈希表的 Type 是 System.Collections.Hashtable
$hash.description
$hash.Get
$hash | Get-Member
合并哈希表:
$hash += @{ Time = (Get-Date) }
按键名排序:
$hash.GetEnumerator() | Sort-Object -Property key -Descending