Показать полную графическую версию : Запуск AIDA на всех компах в сети
Arsenik77
28-10-2011, 21:43
Нужно запустить в тихом (скрытом) режиме AIDA64, чтоб собрать данные о установленном железе.
Для этого нужно скопировать АИДУ на локальные компы пользователей домена.
Структура имен компьютеров K1, K2..K10..K100...K320 , все что начинается не на "K" сервера, их обрабатывать не надо, домен UOA. Права администратора есть, копировать и запускать прогу могу.
Прога должна отработать один раз, затем её запускать нет смысла.
Желательно увидеть список компьютеров на которых запускалась прога, чтобы проверить не обработанные прогой компы.
call aida64.exe /r %COMPUTERNAME% /silent /html /hw
@echo on
set MyDomain=UOA
net view /DOMAIN:UOA > comps.txt
rem Загвоздка как вытащить имя компа начинающийся на K
FOR /F "skip=4 tokens=1 " %%i in (comps.txt) do (
If Exist "%COMPUTERNAME%.htm" (
rem Контроль на повторный запуск проги
GoTo :NEXT
)
copy c:\aida64\*.* "\\%COMPUTERNAME%\c\aida64" /y
NET.EXE START telnet %COMPUTERNAME%
call c:\aida64\aida64.exe /r %COMPUTERNAME% /silent /html /hw
copy "\\%COMPUTERNAME%\c\aida64\report\%COMPUTERNAME%.htm" \\fs\inventory$ /y
:Next
)
Загвоздка как вытащить имя компа начинающийся на K »
@echo off
setlocal enableextensions enabledelayedexpansion
…
for /f "skip=4 tokens=1" %%i in (comps.txt) do (
set sName=%%i
if /i "!sName:~0,1!" equ "K" echo [!sName!]
)
…
endlocal
exit /b 0
Arsenik77
29-10-2011, 09:27
Структура файла comps.txt , нужны только имена компьютеров начинающиеся на K (без // и заметок)
Iska, твой код почему-то не работает.
Имя сервера Заметки
-------------------------------------------------------------------------------
\\BK
\\K5 АБК;7 этаж;Сбыт
\\K100 Компьютер Васи
\\K105 Домашний
\\K108 Рабочий комп
\\PROXY
\\PT
Iska, твой код почему-то не работает. »
Если б Вы сразу выложили образец, или, если бы у меня в тот момент был доступ к сети, и я мог бы сам получить образец ;), я бы сделал так:
@echo off
setlocal enableextensions enabledelayedexpansion
…
for /f "skip=4 tokens=1" %%i in (comps.txt) do (
set sUNCName=%%i
set sServerName=!sUNCName:~2!
if /i "!sServerName:~0,1!" equ "K" echo [!sServerName!]
)
…
endlocal
exit /b 0
Тоже стоит сейчас задача собрать данные о конфигурации компов в сети. Решил это делать стартап-скриптом. По идее, скрипт должен запускаться, проверять есть ли в хранилище отчётов отчёт о текущем компьютере. Если отчёт есть - ничего не делать, если же отчёта нет - запустить AIDA64 с определёнными параметрами, создать отчёт и положить его в хранилище отчётов. Отчёт представляет из себя файл (формат определяется отдельно в параметрах запуска AIDA64). Называется этот файл аналогично имени компьютера на котором был выполнен отчёт.
В Интернете нашёл 2 варианта скрипта для реализации этой идеи:
1. CMD
if not exist \\share\audit\%COMPUTERNAME%.txt ( \\share\audit\aida\aida64.exe /R \\share\audit\%COMPUTERNAME% /TEXT /CUSTOM \\share\audit\aida\aida64.rpf ) else exit
2. VBScript
dim ComputerName
Set objNetwork = CreateObject("Wscript.Network")
ComputerName = objNetwork.ComputerName
Set WshShell = WScript.CreateObject("WScript.Shell")
dim ObjFso
Set objFSO = CreateObject("Scripting.FileSystemObject")
If not objFSO.FileExists("\\Company.Local\Services\AIDA64 Reports\"+ComputerName+".txt") Then
WshShell.Run "\\Company.Local\Files\Distributives\AIDA64\aida64.exe /R \\Company.Local\Services\AIDA64 Reports\$HOSTNAME /SUM /TEXT /SILENT"
end if
Попробовал запустить у себя на VBScript, но он в такой конфигурации отказывается работать. Методом тыка установил, что проблема в строке выделенной красным - видимо ошибка чисто синтаксическая какая-то, потому что, если изменить в ней путь (выделен жирным шрифтом) на какой-нибудь короткий локальный, типа C:\$HOSTNAME, то скрипт замечательно работает.
Прошу помощи специалистов!
Проблема в наличии пробела во втором пути. Попробуйте так:
WshShell.Run """\\Company.Local\Files\Distributives\AIDA64\aida64.exe"" /R ""\\Company.Local\Services\AIDA64 Reports\$HOSTNAME"" /SUM /TEXT /SILENT"
Проблема с внедрением этого (VBS) скрипта через GPO\Scripts\Startup: http://forum.oszone.net/showthread.php?t=237739
Почему-то скрипт на VBS не удалось мне заставить работать через GPO, как Startup, а, при прочих равных, решение CMD заработало. Парадокс!
Timurgall
02-11-2012, 16:27
Поделитесь опытом создания rpf для Аиды. Интересует короткая информация о системе и железе.
CyberMuesli
02-11-2012, 18:49
Нужно запустить в тихом (скрытом) режиме AIDA64, чтоб собрать данные о установленном железе.
Для этого нужно скопировать АИДУ на локальные компы пользователей домена. »
Прочитайте про psexec
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC