在Powershell中格式化表中的计数器数据

时间:2012-06-13 18:26:32

标签: arrays powershell formatting performancecounter

我正在尝试使用以下脚本创建用于监视目的的表:

$w3wppriv = get-counter '\process(w3w*)\working set - private'
$w3wpid = get-counter '\process(w3w*)\id process'

0..($w3wpid.Length -1) | 
select-object (
   @{n="Proces ID"; e={$w3wpid.CounterSamples.Cookedvalue[$_]}},
   @{n="Memory Usage(KB)";  e={$w3wppriv.CounterSamples.CookedValue[$_]}}
              ) | 
   format-table -auto;

我正在尝试获得以下输出:

Process ID Memory Usage(KB)
---------- ----------------
44353      234324343
35343      230909324
2341       932423234

但是,输出不显示任何数据。我想它与阵列有关但我不清楚如何解决这个问题。谢谢!

1 个答案:

答案 0 :(得分:1)

这是另一个不知道如何搜索的例子:)

$w3wppriv = ((get-counter -counter '\process(w3w*)\working set - private').CounterSamples) | select-object -expandproperty cookedvalue
$w3wpid = ((get-counter '\process(w3w*)\id process').CounterSamples) | select-object -expandproperty cookedvalue

0..($w3wpid.Length -1) | 
   select-object (
       @{n="Proces ID"; e={$w3wpid[$_]}},
       @{n="Memory Usage(KB)";  e={$w3wppriv[$_]}}
          ) | 
   format-table -auto;