Besoin d'aide sur une scripte ms-dos

raph -  
grofwa Messages postés 440 Statut Membre -
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

7 réponses

grofwa Messages postés 440 Statut Membre 479
 
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 ;-)
0
raph
 
et elle ressemblerait a quoi la boucle for ( en particulier la condition ) ??

merci d'avance
0
grofwa Messages postés 440 Statut Membre 479
 
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.
0
raph
 
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
raph
 
non tu vois pas ???
0
grofwa Messages postés 440 Statut Membre 479
 
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.
0
raph
 
merci ca marche, mais je n'ai pas le nom de la machine dans le fichier erreur.
J'aurai besoin de savoir sur quelles machines ca n'a pas marché !!

merci d'avance
0
grofwa Messages postés 440 Statut Membre 479
 
Fais un echo de ta machine juste avant :

echo %1 >> fichier.err

et change
NET USE blabla 2>fichier.err

en
NET USE blabla 2>>fichier.err


Mais tu auras toutes les machines du coup...
0