get-wmiobject sql join в powershell - попытка найти физическую память по сравнению с виртуальной памятью удаленных систем

get-wmiobject -query "Выберите TotalPhysicalMemory из Win32_LogicalMemoryConfiguration" -computerCOMPUTERNAME >>output.csv

get-wmiobject -query "Выберите TotalPageFileSpace из Win32_LogicalMemoryConfiguration" -computerCOMPUTERNAME >>output.csv

Я пытаюсь завершить этот скрипт с выводом как таковым:

Computer        Physical Memory      Virtual Memory
server1         4096mb               8000mb
server2         2048mb               4000mb

person Willy    schedule 12.05.2010    source источник


Ответы (2)


Что-то мешает вам сделать что-то подобное?

gwmi -query "Select TotalPhysicalMemory,TotalPageFileSpace from Win32_LogicalMemoryConfiguration" -computer $COMPUTERNAME |
  select @{Name='Computer', Expression=$COMPUTERNAME},
         @{Name='Physical Memory', Expression=$_.TotalPhysicalMemory},
         @{Name='Virtual Memory', Expression=$_.TotalPageFileSize} |
  Export-Csv

(Не проверено, так как Get-WmiOject не знает здесь класс Win32_LogicalMemoryConfiguration. Но может сработать.)

person Joey    schedule 12.05.2010

Win32_LogicalMemoryConfiguration устарела. Я думаю, что эта функция получит нужную вам информацию:

function Get-MemoryInfo
{
    Process
    {
        Get-WmiObject Win32_OperatingSystem -ComputerName $_ |
        % {
            New-Object PSObject |
            Add-Member NoteProperty Computer $_.CSName -PassThru |
            Add-Member NoteProperty VirtualMemoryMB ([int]($_.TotalVirtualMemorySize / 1KB)) -PassThru
        } |
        % {
            $cs = Get-WmiObject Win32_ComputerSystem -ComputerName $_.Computer
            $_ | Add-Member NoteProperty PhysicalMemoryMB ([int]($cs.TotalPhysicalMemory / 1MB)) -PassThru
        }
    }
}

Вы можете передать список компьютеров в Get-MemoryInfo. Затем направьте вывод в Export-Csv, если вам нужен CSV-файл.

person OldFart    schedule 12.05.2010
comment
Действительно ли необходим второй вызов gwmi? Разве первый не должен уже содержать информацию? - person Joey; 12.05.2010
comment
Может он и есть, но я искал и не нашел. - person OldFart; 12.05.2010