Au lieu de taper ceci dans une invite de commande une à la fois:
wmic/node: ipaddress/user: administrateur/mot de passe: le bios de mypassword obtient le numéro de série
Comment puis-je exécuter cela sur un sous-réseau entier et la sortie sur un document texte? Comme je le fais tous les deux mois pour vérifier notre inventaire d’ordinateurs, je suppose que j’aurais une façon beaucoup plus simple de placer cela dans un script batch au lieu de le faire manuellement.
Vous pouvez mettre une liste après node:
node:ip1,ip2,ip3
ou utiliser un fichier node:@file
- il vous suffit donc de mettre toutes vos adresses IP dans un fichier, puis d'exécuter:
wmic /node:@nodes.txt /user:administrator /password:mypassword /output:out.csv bios get serialnumber /format:csv
Cela suppose que l'utilisateur/mot de passe est le même sur toutes les machines.
Une boucle for avec une redirection de fichier fonctionnera, mais vous voudrez peut-être la laisser reposer pendant un certain temps si vous avez plus de trous dans votre ensemble de nœuds (en d'autres termes, vous ne pouvez pas résoudre l'adresse IP dans la boucle).
(FOR /L %s IN (1,1,254) DO wmic /node:192.96.1.%s /user:administrator /password:pass bios get serialnumber) >> c:\results.txt
Si vous envisagez de le placer dans un fichier de commandes, remplacez le %s
par %%s
. C'est tout.