PDA

Показать полную графическую версию : Скрипт автоматического сбора информации по сети.


diagnoz_
03-02-2017, 09:10
Здравствуйте. Стала задача своеобразного аудита всех ПК в сети фирмы. решил использовать встроенное средство msinfo32.exe. получился такой bat-файл:

@echo off
for /f "delims=" %%a in (D:\папка\папка\ip-адреса.txt) do (
echo %%a
start /wait sc \\%%a config helpsvc start=auto
start /wait sc \\%%a start helpsvc
start /wait msinfo32.exe /report D:\папка1\папка1\%%a.txt /categories +componentsStorage /computer %%a
)


Видно, что ip-адреса берутся из файла ip-адреса.txt и в итоге формируются файлы в имени которого ip каждого ПК по пути D:\папка1\папка1 , после отработки msinfo32. все хорошо, да вот сформированный ip.txt с отчетом внутри, собирает абсолютно всю инфу о ПК, вплоть до возникших проблем в ОС, какие обновления стоят и т.д. размер получается порядка 1Мб и более, по-разному. да и по времени занимает немало учитывая количество компьютеров. требуется собрать только основные сведения по категориям: имя пк, модель мат.платы, процессор, жесткий диск, память, сеть. примерно так, но не все что только можно... подскажите, пожалуйста, как правильно указать в сценарии конкретные категории устройств для отчета и желательно, чтобы в имени сформированного файла было имя_ПК, вместо IP? как только не пробовал не получается. или возможно у кого есть другой скрипт (желательно VBS или bat) для таких целей. спасибо.

diagnoz_
03-02-2017, 09:23
делал так - msinfo32 /computer имя_ПК /report D:\имя_ПК.txt получаю имя_пк.txt, но файл со всем цифровым мусором внутри, все что только можно. пробовал получить справку с параметром msinfo32 /showcategories, /categories, /category , но мне средство msinfo32 просто собирает инфу о моем, локальном компьютере. получается, что msinfo32 игнорирует те компоненты которые я ей указываю для сбора.

Iska
03-02-2017, 12:06
diagnoz_, смотрите в сторону Wbem. Это wmic.exe для командной строки, и ровно те же классы для использования посредством Automation в WSH/PoSH: Win32_ComputerSystem, Win32_Baseboard и т.д.

alpap
03-02-2017, 13:59
@echo off
for /f "delims=" %%a in ('"wmic path Win32_OperatingSystem get Caption,CSDVersion,Version,BuildNumber,BuildType,OSArchitecture,RegisteredUser,SerialNumber,WindowsD irectory /value|find "^=""') do set "%%a"
for /f "delims=" %%a in ('"wmic path Win32_ComputerSystem get Manufacturer,Model,SystemType,TotalPhysicalMemory,UserName,Workgroup /value|find "^=""') do set "%%a"
for /f "delims=" %%a in ('"wmic path Win32_VideoController get VideoProcessor,CurrentHorizontalResolution,CurrentVerticalResolution,AdapterDACType,AdapterRAM /value|find "^=""') do set "%%a"
for /f "delims=" %%a in ('"wmic path Win32_SoundDevice get ProductName /value|find "^=""') do set "%%a"
for /f "delims=" %%a in ('"wmic path Win32_Processor get Name,NumberOfCores /value|find "^=""') do set "%%a"
for /f "delims=" %%a in ('"wmic path Win32_NetworkAdapter where NetConnectionStatus=2 get Description,NetConnectionID,Speed,MACAddress /value|find "^=""') do set "%%a"
>>"info.txt" (
echo Система
echo Название ОС: %Caption:~,-2%
echo Версия ОС: %Version% %CSDVersion% сборка %BuildNumber%
echo Тип ОС: %BuildType% ^(%OSArchitecture%^)
echo Код продукта: %SerialNumber%
echo Папка Windows: %WindowsDirectory%
echo Зарегистрированный владелец: %RegisteredUser%
echo Изготовитель системы: %Manufacturer%
echo Модель системы: %Model%
echo Тип системы: %SystemType%
echo Системная память: %TotalPhysicalMemory% МБ
echo Тип ЦП: "%Name%"
echo Число ядер: %NumberOfCores%
echo Имя пользователя: %UserName%
echo Рабочая группа: %Workgroup%
echo.
echo Видео
echo Тип видеопроцессора: "%VideoProcessor%"
echo Разрешение монитора: %CurrentHorizontalResolution%x%CurrentVerticalResolution%
echo Тип DAC: %AdapterDACType%
echo Объем видео ОЗУ: %AdapterRAM%
echo.
echo Аудио
echo Имя адаптера: %ProductName%
echo.
echo Сеть
echo Сетевой адаптер: %Description%
echo Имя подключения: %NetConnectionID%
echo Скорость: %Speed%
echo MAC адрес: %MACAddress%
)
exit

diagnoz_
03-02-2017, 14:43
Спасибо. запустил Ваш файл, показал инфу моего ПК, но без HDD. а вот на некоторых системах где стоит ХР, создает файл, а там пусто напротив всех категорий "железа".

Kazun
03-02-2017, 15:48
Есть бесплатная замечательная утилита WinAudit (https://winaudit.codeplex.com/) с поддержкой командной строки.

Iska
03-02-2017, 18:15
diagnoz_, Wbem — платформа. Если тот или иной производитель «забил» на поддержку оной целиком или частично — естественно, могут быть и пустые классы без экземпляров объектов, и отсутствующие свойства, и не реализованные методы.

P.S. Насчёт «всех категорий» — это перебор.




© OSzone.net 2001-2012