Bonjour à tous,
Alors j'ai fais un petit script en fait qui détecte toutes les imprimantes de mon entreprise
Alors donc sur la première ligne je mets dans le fichier netview.txt la liste des imprimantes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 net view \\serveur > netview.txt get-content netview.txt | foreach{($_.split(""))[0]} > liste.txt Get-Content liste.txt | ForEach-Object{$_ -replace '^(.*)$','$0.suffixe'} | Set-Content listePRN.TXT Get-Content listePRN.txt | ForEach-Object{ $ping = ping $_ if( $? -eq "True" ) {Get-Content listePRN.TXT | ForEach-Object{$_ -replace '^(.*)$','$0 OK'} | Set-Content listeOK.TXT} else{Get-Content listePRN.TXT | ForEach-Object{$_ -replace '^(.*)$','$0 KO'} | Set-Content listeKO.TXT}}
Sur la 2eme ligne je prend seulement la première colonne et je le mets dans le fichier liste.txt
Dans la 3eme ligne j'ajoute le suffixe aux imprimantes qui vont dans le fichier listePRN.TXT
Et enfin je ping la liste, et c'est là que je suis bloqué, j'aimerais pour les imprimantes répondant au PING les mettre dans un fichier texte ok.txt par exemple. Et pour les autres ko.txt
Mais je n'y arrive pas, avec ce code j'ai des OK et des KO partout sur les 2 fichiers.
En vous remerciant d'avance.
edit: en fait pour préciser, j'aimerais juste avoir le bout de code, qui me permet pour les imprimantes ayant le code TRUE d'aller dans un fichier texte ( OK.TXT ) avec dedans imprimante1 = OK, et pour le code FALSE d'aller dans un fichier texte ( KO.TXT par ex) et imprimante2 = KO.
Partager