WMI Query Language sobre varios hosts

Buenas.

Con el lenguaje "wmi" se puede sacar muchísima información sobre Windows. Por ejemplo, sé que

strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
    Wscript.Echo "System Name: " & objComputer.Name
    Wscript.Echo "Total Physical Memory: " & objComputer.TotalPhysicalMemory
Next


Me saca la memoria física del host en el que estoy.

Sé las consultas que he de hacer para sacar toda la info de un host. ¿Alguien sabe cómo hacerlo para iterarlo sobre una lista de hosts?

Gracias!
banderas20 escribió:Buenas.

Con el lenguaje "wmi" se puede sacar muchísima información sobre Windows. Por ejemplo, sé que

strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
    Wscript.Echo "System Name: " & objComputer.Name
    Wscript.Echo "Total Physical Memory: " & objComputer.TotalPhysicalMemory
Next


Me saca la memoria física del host en el que estoy.

Sé las consultas que he de hacer para sacar toda la info de un host. ¿Alguien sabe cómo hacerlo para iterarlo sobre una lista de hosts?

Gracias!

Una posible idea a bote pronto sin demasiados conocimientos a nivel Windows.

¿Manejas PowerShell? [angelito]

Seguramente puedas combinar PowerShell con WMI: https://social.technet.microsoft.com/wi ... tions.aspx

Crea una función que te saque la información que quieres de cada host y aplicas la función a la lista de hosts.

Tienes una utilidad también para python Python-cim pero supongo que tal vez en el equipo no puedas tener o instalar Python y lo querras hacer con las menos dependencias posibles.

Ya comentarás cómo termina el asunto.

Es muy educativo desarrollarte tus propias herramientas; pero no olvides que seguramente eso que quieres hacer ya se encuentre desarrollado en GitHub o algún lugar similar. Si no se encontrara, siempre suele ser interesante compartir herramientas.
Newton escribió:
banderas20 escribió:Buenas.

Con el lenguaje "wmi" se puede sacar muchísima información sobre Windows. Por ejemplo, sé que

strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
    Wscript.Echo "System Name: " & objComputer.Name
    Wscript.Echo "Total Physical Memory: " & objComputer.TotalPhysicalMemory
Next


Me saca la memoria física del host en el que estoy.

Sé las consultas que he de hacer para sacar toda la info de un host. ¿Alguien sabe cómo hacerlo para iterarlo sobre una lista de hosts?

Gracias!

Una posible idea a bote pronto sin demasiados conocimientos a nivel Windows.

¿Manejas PowerShell? [angelito]

Seguramente puedas combinar PowerShell con WMI: https://social.technet.microsoft.com/wi ... tions.aspx

Crea una función que te saque la información que quieres de cada host y aplicas la función a la lista de hosts.

Tienes una utilidad también para python Python-cim pero supongo que tal vez en el equipo no puedas tener o instalar Python y lo querras hacer con las menos dependencias posibles.

Ya comentarás cómo termina el asunto.

Es muy educativo desarrollarte tus propias herramientas; pero no olvides que seguramente eso que quieres hacer ya se encuentre desarrollado en GitHub o algún lugar similar. Si no se encontrara, siempre suele ser interesante compartir herramientas.


Powershell poquito. Lo estoy desarrollando en vbs cogiendo trozos de aquí y de allí. El tema es que no tengo mucho tiempo para desarrollar...

Si lo consigo, lo posteo.

Gracias!
2 respuestas