Execute o comando WMIC na rede

7

Em vez de digitar isso em um prompt de comando, um por vez:

wmic / node: ipaddress / user: administrador / senha: mypassword bios get serialnumber

Como posso executar isso em uma sub-rede inteira e enviá-la para um documento de texto? Como faço isso a cada dois meses para verificar nosso inventário de computadores, eu diria que seria muito mais fácil colocá-lo em um script em vez de fazê-lo manualmente.

    
por C-dizzle 12.10.2012 / 16:53

2 respostas

11

Você pode colocar uma lista depois de node: node:ip1,ip2,ip3 , ou usar um arquivo node:@file - então coloque todos os seus endereços IP em um arquivo e então execute:

wmic /node:@nodes.txt /user:administrator /password:mypassword /output:out.csv bios get serialnumber /format:csv

Isso assume que o usuário / senha é o mesmo em todas as máquinas.

    
por 12.10.2012 / 20:14
2

Um loop for com um redirecionamento de arquivo funcionará, embora você possa querer deixá-lo funcionando por um tempo se você tiver mais falhas no seu conjunto de nós (em outras palavras, não é possível resolver o IP no loop)

(FOR /L %s IN (1,1,254) DO wmic /node:192.96.1.%s /user:administrator /password:pass bios get serialnumber) >> c:\results.txt

Se você planeja colocar isso em um arquivo de lote, substitua o %s por %%s . Isso é tudo.

    
por 12.10.2012 / 17:24