Обработка: сбор информации с использованием Get-WMIobject

Обработка: сбор информации с использованием Get-WMIobject

Перед тем как начать, точнее продолжить серию обзоров - рекомендую посетить сайт где профессионально выполняют ремонт ноутбуков samsung.

На данном этапе видно, насколько успешно PowerShell собирает информацию. В этом примере используется команда Get-WMIObject. Вы можете больше узнать о любой команде с помощью команды Help. Действуя по запросу менеджера, мы выяснили, что необходимо использовать два класса WMI для подготовки отчета, который был назван Win32_OperatingSystem, и один запрос WMI для получения IP-адресов компьютеров. Подготовим однострочную команду. Выполним команду Get-WMIobject на локальной системе, создав переменную PSObject. Сохранив результаты в переменной, можно задействовать команду Get-Member для отображения всех значений, сохраненных в этом объекте .NET, как показано на экране 3.

$SavedAuditOS = Get-WMIobject-Class Win32_OperatingSystem $SavedAuditOS | GM-MemberType Property Символ (|) используется для передачи результатов в другую команду, в данном случае GM. GM —псевдоним команды Get-Member, которая упрощает поиск и отображение всех полей (или свойств), хранящихся в недавно созданной переменной.

Из переменной $SavedAuditOS выбираем свойства CSName, SerialNumber и Name. Ниже приводится однострочная команда для показа выбранных свойств: $SavedAuditOS | Select-Object CSname, SerialNumber, Name | FT-AutoSize

Переменная передается двум другим командам: Select-Object и FT (псевдоним для Format-Table). Команда Select-Object помогает отображать свойства PSObject. Команда Format-Table позволяет представить результаты в виде отформатированной таблицы и с помощью параметра-AutoSize удаляет лишние пробелы между отображаемыми столбцами.

Переходим к получению информации об IP-адресе. Применяя команд у Get-WMIobject, мы избираем другой подход, указав параметр

WMI-Query: $SavedAuditlPAddr = Get-WmiObject -query "SELECT * FROM Win32_ PingStatus WHERE Address= $MyMachineName "  | select StatusCode, IPv4 Address I ft-auto;

Этот фрагмент исходного текста считается однострочным, хотя в нем использован оператор ( ), чтобы разбить строку и сделать ее более удобной для восприятия. Кроме того, точку с запятой (;) можно использовать для указания конца строки. В строке WMI-Query обязательно измените переменную, следующую 3aAddress=, указав имя компьютера.

Обратите внимание, что для сбора информации используется Win32_ PingStatus; Test-Connection не применяется, так как команда возвращает данные, только если можно проверить компьютер с помощью команды ping. Кроме того, командную строку можно немного сократить:

Get-WmiObject Win32_PingStatus-filter "Address=""$MyMachineName"""

Популярные шаблоны