Мой компьютер - Windows 7 и работает Powershell, я хотел бы выполнить команды для получения информации (в частности, netstat) с группы других компьютеров (Windows XP), которые не имеют Powershell. Возможно ли это с помощью Powershell или мне нужно найти другое решение?
5 ответов
Для удаленного запуска Powershell вам необходимо установить Powershell на удаленном компьютере. Вам нужно использовать что-то вроде PsExec: http://technet.microsoft.com/en-us/sysinternals/bb897553.
PowerShell удаленного взаимодействия действительно выходит за рамки. Но много информации вы могли бы собрать через WMI. Другой метод, который я использовал в прошлом, заключается в удаленном планировании задачи на другом компьютере для запуска сценария "локально" для получения необходимой информации. Это прекрасно работает для таких вещей, как netstat.
Вы можете сделать это любым количеством способов, но объем информации, которую вы можете получить, будет сильно различаться в зависимости от используемой вами техники.
Я бы порекомендовал взглянуть @ Get-WmiObject -computerName. При этом будет использоваться родное удаленное взаимодействие WMI для связи с XP и Windows 2000 (или любой более новой ОС). Вы не сможете делать все, что можете, с полноценной PowerShell, но вы сможете делать все, что можно, с WMI в Windows XP, и вы сможете удаленно управлять этим из PowerShell в одном устройстве.
EventLog также открывается удаленно в аналогичном механизме. Используйте Get-EventLog -ComputerName для получения удаленных записей журнала событий из XP или 2000.
Надеюсь это поможет
Вы можете использовать командлет Get-WMIObject с параметром -ComputerName, вам потребуются права администратора на удаленном компьютере:
Get-WMIObject Win32_BIOS -ComputerName Contoso-Client -Credential Get-Credential
Используйте -Credential, если вы используете другую учетную запись на локальном компьютере, у которой нет прав на удаленный компьютер, вам понадобятся учетные данные учетной записи, которая имеет доступ администратора на удаленном компьютере.
Это можно сделать с помощью Powershell, если на целевых компьютерах не запущен Powershell. Используйте Invoke-Command
для удаленного запуска netstat на целевом компьютере.