This is a weird peice of code inspired by some syntax I found in Hristo Deshev's interesting book: "Pro Windows Powershell". Hristo talks about converting IDictionary objects to Hash Tables. 'PS' or 'get-process' uses the PID as the hash code for the process object. This allows a construct that produces a hash table with explict PIDs as hash keys. It is too late to figure out if this side-effect would have any value to anyone.
$script_block_ID = {ps | %{$_.ID} | Sort-object }
$dict = new-object Collections.Specialized.OrderedDictionary
$script_block_ID.Invoke() | %{$dict[(ps -id $_ | Select Name)] = $_.GetHashCode()}
write `r`n `$dict:
$dict
$hash = [hashtable]$dict
write `r`n `$hash:
$hash
[$hash:]
@{Name=cmd} 1364
@{Name=alg} 864
@{Name=explorer} 3212
@{Name=gvim} 1852
@{Name=wmiprvse} 1332
@{Name=VCSExpress} 3980
@{Name=wscntfy} 352
@{Name=chrome} 2724
@{Name=svchost} 1536
....
No comments:
Post a Comment