2015-08-21 5 views
0

У меня есть запрос WMI, чтобы получить информацию об использовании памяти на удаленном сервере:Powershell Трубопроводный фильтр

$w3wpresult = (get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop| select ({$_.privatepagecount/1gb}) 
$vmresult = (get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop| select ({$_.virtualsize/1gb})) 

Выход:

IP 21Aug2015 0939 @{$_.privatepagecount/1gb=1.0206184387207} @{$_.virtualsize/1gb=1.77864074707031} 
IP 21Aug2015 0939 @{$_.privatepagecount/1gb=0.945835113525391} @{$_.virtualsize/1gb=1.72514343261719} 

Я не хочу, чтобы @{$.privatepagecount/1gb= часть строки. Я просто хочу увидеть числовое значение для памяти.

Как это сделать? Любой вход очень благодарен спасибо!

ответ

1

Вы не можете использовать Select-Object с этим типом скриптового блока для настраиваемого свойства. Вместо этого, построить его таким образом, используя хэш-таблицу и указав метку и выражение:

@{L='PrivatePageCountGB';E={$_.privatepagecount/1gb}} 

Собирает вместе, чтобы выглядеть следующим образом:

$w3wpresult = get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop| 
select @{L='PrivatePageCountGB';E={$_.privatepagecount/1gb}} 

$vmresult = get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop| 
select @{L='VirtualSizeGB';E={$_.virtualsize/1gb}} 

Если вы только заботы о стоимости, то это тоже сработает.

$w3wpresult = (get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop).privatepagecount /1GB 
$vmresult = (get-wmiobject Win32_Process -filter "commandline like '%serviceoptimization%'" -computername $server -ErrorAction Stop).virtualsize/1GB 
+0

Благодарим за отзыв. У меня было это как раньше, но я хочу, чтобы объект $ w3wpResult сохранял только числовое значение памяти. $ w3wpResult позже помещается в текстовый файл, который будет импортирован в excel. Поэтому ярлык не нужен. есть ли способ сделать это? –

+0

Спасибо, бопекс! –

Смежные вопросы