Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Сбор данных с ПК

Ответить
Настройки темы
PowerShell - [решено] Сбор данных с ПК

Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый вечер.
При выполнении данного запроса:
Код: Выделить весь код
get-adcomputer -searchbase "OU=PC,OU=TET,DC=PC,DC=MEM" -filter {(name -like "*") -and (enable -eq "true")} -Properties name, IPv4Address, CanonicalName | select name, IPv4Address, CanonicalName | out-gridview
я получаю вполне красивую табличку с именем машины, IP, и её местонахождение в домене. Проблема в том что к данной табличке мне необходимо добавить ещё информацию, которая находится в двух разных местах:
1) информация находится в двух местах реестра. т.е. необходимо считать информацию в ветках реестра и выдать указанные там значение в разные столбцы в табличке.
2) информация актуальной версии рабочего приложения, данную информацию я смог извлечь WMIC командной:
Код: Выделить весь код
wmic.exe /interactive:off /failfast:on /node:127.0.0.1  datafile where "name='C:\\Offtop\\Top\\Top.exe'" get version
Которая возвращает результат типа:
Version
1.22.2.8
Но хотелось бы это сделать через PowerShell и получать результат в общей таблице.

Есть возможность такое провернуть с помощью PowerShell?

Отправлено: 23:45, 20-07-2018

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Armsinglom:
Код: Выделить весь код
wmic.exe /interactive:off /failfast:on /node:127.0.0.1 datafile where "name='C:\\Offtop\\Top\\Top.exe'" get version
»
Например:
Код: Выделить весь код
Write-Host (@(Get-WmiObject -ComputerName 127.0.0.1 -Class 'CIM_DataFile' -Filter 'name = "C:\\Offtop\\Top\\Top.exe"'))[0].Version
Но можно и встроенными средствами:
Код: Выделить весь код
$oVersionInfo = ([System.IO.FileInfo]"C:\Offtop\Top\Top.exe").VersionInfo
Write-Host $oVersionInfo.FileVersion, $oVersionInfo.ProductVersion
естественно, через сессию WinRM.

Вообще же, идея с перебором-опросом кучи машин с одной — это не самый правильный самый неправильный подход в условиях домена. Пишите логон-скрипт, который привязывайте к машинам, в котором будет происходить извлечение информации с локальной машины и заполнение этой информацией удалённой базы, будь то Jet, або SQL, на текущую дату/время.
Это сообщение посчитали полезным следующие участники:

Отправлено: 01:26, 21-07-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата Iska:
Вообще же, идея с перебором-опросом кучи машин с одной — это не самый правильный самый неправильный подход в условиях домена. »
тем не менее, для этого у Invoke-Command даже есть специальный ключ ThrottleLimit

Цитата Iska:
Пишите логон-скрипт, который привязывайте к машинам, в котором будет происходить извлечение информации с локальной машины и заполнение этой информацией удалённой базы »
Это вообще не работает: не обязательно перелогиниваться при каждом обновлении ПО и изменении реестра. Вернее: хоть как-то работает, если обесточивать на ночь всё предприятие :-)

Нормальная практика: логировать события и вести мониторинг по отдельности. А не скрещивать ужа с ежом.
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:36, 21-07-2018 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Busla:
тем не менее, для этого у Invoke-Command даже есть специальный ключ ThrottleLimit »
Busla, да, я знаю. В этом отношении ребята из Microsoft наконец-то повернулись к пользователям лицом, за что им спасибо.

Цитата Busla:
Это вообще не работает: не обязательно перелогиниваться при каждом обновлении ПО и изменении реестра. Вернее: хоть как-то работает, если обесточивать на ночь всё предприятие :-)
Нормальная практика: логировать события и вести мониторинг по отдельности. А не скрещивать ужа с ежом. »
Это и есть нормальная практика. Не бывает варианта «Не перегружаем машину по пять лет».

Отправлено: 12:21, 21-07-2018 | #4


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Если не сложно, можете набросать полную версию скрипта, моя часть + Invoke-Command, и если есть возможность в него добавить еще и выборку из реестра...

Отправлено: 13:38, 21-07-2018 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Armsinglom, я точно не набросаю, поскольку ограничен нынче одной машиной, коллеги помогут. Но в любом случае с Вас потребуется точное указание вот этих вот путей:
Цитата Armsinglom:
в двух местах реестра »

Отправлено: 13:45, 21-07-2018 | #6


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Не проблема:
\HKEY_LOCAL_MACHINE\SOFTWARE\RUSSIA\SU\CORE
\HKEY_LOCAL_MACHINE\SOFTWARE\RUSSIA\SU\FDC

Отправлено: 15:52, 21-07-2018 | #7


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Armsinglom, это что — разделы, и Вам нужно полное содержимое этих разделов?

Отправлено: 16:57, 21-07-2018 | #8


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


прошу прощения:
\HKEY_LOCAL_MACHINE\SOFTWARE\RUSSIA\SU\CORE\SQLver.REG_SZ
\HKEY_LOCAL_MACHINE\SOFTWARE\RUSSIA\SU\FDC\Setup.REG_SZ
Необходимы только значения из этих ключей, я просто не за рабочей машиной, пишу на память, но я потом если что путь подправлю.

Отправлено: 17:38, 21-07-2018 | #9


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата Iska:
Это и есть нормальная практика. Не бывает варианта «Не перегружаем машину по пять лет». »
мир не делится на чёрное и белое: между аптаймом 5 лет и выключением каждый вечер есть масса промежуточных вариантов

Отправлено: 23:36, 21-07-2018 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Сбор данных с ПК

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Франция требует от Microsoft прекратить «чрезмерный» сбор пользовательских данных в W OSZone News Новости и события Microsoft 3 23-07-2016 10:28
Microsoft расширяет сбор данных в Windows 7 и 8 OSZone News Новости и события Microsoft 1 29-08-2015 11:08
2007 - Excel сбор данных с нескольких файлов Streamnewal Microsoft Office (Word, Excel, Outlook и т.д.) 2 15-05-2014 05:39
Сбор ПК! Levondk Выбор отдельных компонентов компьютера и конфигурации в целом 12 09-06-2012 23:25
[решено] Сбор офисного ПК ramazanov94@vk Выбор отдельных компонентов компьютера и конфигурации в целом 10 02-04-2012 20:29




 
Переход