Besoin d'aide sur une scripte ms-dos
Bonjour,
Je dois faire un script ms-dos qui cré un lecteur réseau sur chaque postes et lance une manip. J'utilise le goto mais ca marche pas fort (je vous explique ci dessous ce que j'essai de faire )
creation d'un lecteur réseau
manip a faire ( ca je sais )
deconnexion du lecteur reseau
creation d'un autre lecteur reseau sur la meme lettre de lecteur que precedemment
meme manip que precedemment a executer
deconnexion du lecteur reseau
etc ...........
J'espere etre clair. Je voudrai donc un script avec la manip ecrite une seule fois ( => utilisation du goto mais j'arrive pas )
merci d'avance pour m'éclaicir la chose
Je dois faire un script ms-dos qui cré un lecteur réseau sur chaque postes et lance une manip. J'utilise le goto mais ca marche pas fort (je vous explique ci dessous ce que j'essai de faire )
creation d'un lecteur réseau
manip a faire ( ca je sais )
deconnexion du lecteur reseau
creation d'un autre lecteur reseau sur la meme lettre de lecteur que precedemment
meme manip que precedemment a executer
deconnexion du lecteur reseau
etc ...........
J'espere etre clair. Je voudrai donc un script avec la manip ecrite une seule fois ( => utilisation du goto mais j'arrive pas )
merci d'avance pour m'éclaicir la chose
7 réponses
-
Salut,
personnellement, je mettrais la liste des maps à exécuter dans un fichier texte et j'utiliserais la boucle
FOR /F
pour traiter chacune des lignes de ton fichier texte.
Si la chose n'est pas assez éclairée, fais-moi signe ;-)
-
et elle ressemblerait a quoi la boucle for ( en particulier la condition ) ??
merci d'avance -
Disons concrètement que dans un premier script (manips.cmd) je ferais le map, la manip et le disconnect du map, genre ceci :
NET USE x: %1 manipulations diverses NET USE x: /delete
Dans un deuxième fichier, je mettrais la liste des maps à créer (maps.txt par exemple)
Dans un dernier script, je mettrais ceci :
FOR /F "tokens=1 delims= " %%A IN ('TYPE maps.txt') DO call manips.cmd %%A
Je n'ai pas testé, mais ça devrait être à peu près comme ça.
M.
-
merci bcp ca marche nickel.
Je vais encore t'embeter une fois. Je voudrai renvoyer les erreurs dû a l'impossibilité d'établir le lecteur réseau ( pc eteint en particulier ) dans un fichier .
Tu connais ??
merci d'avance -
non tu vois pas ???
-
Si, je vois, mais j'étais pas là :-)
tu rediriges la sortie erreur dans un fichier comme ceci :
NET USE blabla 2>fichier.err
M.
-
Fais un echo de ta machine juste avant :
echo %1 >> fichier.err
et changeNET USE blabla 2>fichier.err
enNET USE blabla 2>>fichier.err
Mais tu auras toutes les machines du coup...