Se connecter / S'enregistrer
Votre question

Besoin d'aide sur un fichier batch paramétré !

Tags :
  • X4
  • Programmation
Dernière réponse : dans Programmation
27 Janvier 2007 14:15:57

Bonjour à tous,j'ai un batch à programmer mais ce dernier à du mal a marcher.J'apprécierai qu'on puisse m'aider pour corriger les erreurs de mon batch.Je suppose qu'elles sont nombreuses mais ça m'a l'air pourtant correct.Merci d'avance
Voici l'énoncé :

1/ Afficher les paramètres X1,X2,X3,X4,X5,X6 et les valider sinon aller à la fin du batch

2/ Tester l'existence du répertoire X1 et s'il existe afficher son contenu, le supprimer entièrement après validation

3/ Créer l'arborescence suivante dans la racine du disque c:
X1 X5
x6

4/ Afficher tous les fichiers *.X2 de WINNT\SYSTEM32

5/ Demander où on veut les copier (X5,X6,nulle part) et si oui les copier dans le dossier choisi.

6/ Afficher tous les fichiers *.X3 de WINNT\SYSTEM32

7/ Demander où on veut les copier (X5,X6,nulle part) et si oui les copier dans le dossier choisi.

8/ Copier votre fichier dans X1 sous "votrenom.bat"

9/ Afficher les attributs du fichier, demander quel attribut on veut changer, changer l'attribut

10/Recommencer le point 9 tant que l'utilisateur le demande

11/ Afficher l'arborescence de X1 page par page avec les fichiers

12/ Demander si on veut recommencer le batch, si oui recommencer au point 1,sinon afficher votre fichier batch et arrêter le traitement.

Et voici mon batch à l'heure actuelle :

ECHO OFF
CLS
ECHO Bienvenue dans mon TP
ECHO 1er parametre
ECHO %1
ECHO 2nd parametre
ECHO %2
ECHO 3eme parametre
ECHO %3
ECHO 4eme parametre
ECHO %4
ECHO 5eme parametre
ECHO %5
ECHO 6eme parametre
ECHO %6
CHOICE Vos paramètres sont-ils ceux que vous voulez?
If errorlevel 2 goto fin

IF EXIST %1 GOTO 1
IF NOT EXIST %1 GOTO FIN
PAUSE

MD %1/%5
MD %1/%6

PAUSE
DIR c:/Windows/system32/*.%2

PAUSE
CHOICE /C:CUI Si vous voulez les copier dans %5 tapez C, si vous voulez les copier dans %6 tapez U et si vous ne voulez rien copier tapez I
If errorlevel 3 goto fin
IF errorlevel 2 copy C:\windows\system32\*.%2 %1\%5
If errorlevel 1 copy c:\windows\system32\*.%2 %1\%6
PAUSE

DIR c:/windows/system32/*.%3

CHOICE /C:ROC Si vous voulez les copier dans %5 tapez R,si vous voulez les copier dans %6 tapez O et si vous ne voulez rien copier tapez C
If errorlevel 3 goto fin
IF errorlevel 2 copy C:\windows\system32\*.%2 %1\%5
If errorlevel 1 copy c:\windows\system32\*.%2 %1\%6
PAUSE

COPY TPBatch.Bat c:\%1\toto.bat
PAUSE

GOTO 10

:10
ATTRIB c:\%1\Dubien.bat
CHOICE /C:RASH Si vous voulez changer l'attribut lecture seule,tapez R,si vous voulez changer l'attribut archive,tapez A,si vous voulez
changer l'attribut Système tapez S et si vous voulez changer l'attribut Caché,tapez H.Sinon tapez Q.
If errorlevel 5 goto fin
IF errorlevel 4 attrib +R c:\%1\toto.bat
If errorlevel 3 attrib +A c:\%1\toto.bat
If errorlevel 2 attrib +S c:\%1\toto.bat
If errorlevel 1 attrib +H c:\%1\toto.bat

TREE/F/P %1
PAUSE

Voulez-vous recommencer ce batch?
If errorlevel 2 goto %0
If errorlevel 1 dir %1\TPBatch.bat
GOTO FIN

:1
DIR %1
RD/S %1
PAUSE

:FIN
ECHO Au revoir !
PAUSE



Autres pages sur : besoin aide fichier batch parametre

a b L Programmation
27 Janvier 2007 17:37:22

Peux-tu préciser un peu plus ton problème ?

ps: choice ne fonctionne pas sur tous les windows :p 
27 Janvier 2007 18:24:03

Mon problème est simple : il ne fonctionne pas !
J'aimerais que qqun puisse m'aider à le corriger !
Contenus similaires
27 Janvier 2007 18:47:10

ya pas de debugger de .batch ??????
a b L Programmation
27 Janvier 2007 20:45:00

non pas de debugger :D 
Pour savoir d'où vient le problème ajoute des ECHO pour voir d'où vient ton problème.
Je n'aime pas quand en programmation, on me sort du "ça marche pas". Précise d'où vient ton problème, parce que je ne testerai pas le code. Si tu dis où est le problème, normalement, je (ou quelqu'un d'autre) t'indiquera la résolution sans problème.
a b L Programmation
27 Janvier 2007 21:25:14

C'est vrai que faire un tel programme n'est pas très compliqué en fait.
Merci pour le lien maxcailla, je testerai ça :) 
28 Janvier 2007 00:41:28

Mon problème vient dès le départ en fait,je ne cherche pas à faire du "ca marche pas" pour me dédouaner du boulot et faire les autres le travail à ma place,la preuve je l'ai fait,mais j'ai beaucoup de mal avec les paramètres.Normalement si j'affiche les paramètres,il me semble que je dois les entrer.Or, quand je lance le batch bah je rentre rien.
28 Janvier 2007 10:56:34

Tu lances ton batch depuis l'explorateur j'imagine !? Lances-le à partir de l'invite de commandes :
batch.bat 1 2 3 4 5 6 => lances ton batch avec les paramètres %1 à %6 qui valent respectivement les valeurs 1,2,3,4,5 et 6 !!!

Une autre petite chose que j'ai remarqué : remplaces C:\Windows par %systemroot% ça rendra plus "portable" ton batch ! Genre moi j'ai pas C:\Windows mais C:\WinNT donc ca ne passe pas tandis qu'avec %systemroot% c''est bon !!!
28 Janvier 2007 11:40:09

Je le lance de l'invite de commandes, a partir d'un dossier dans "mes documents".
batch.bat 1 2 3 4 5 6 => lances ton batch avec les paramètres %1 à %6 qui valent respectivement les valeurs 1,2,3,4,5 et 6 !!! Je fais quoi dans le batch? 1er parametre 1%1?ainsi de suite?Je te suis mal :-p
28 Janvier 2007 11:44:57

Ben je sais pas tu mets les paramètres que tu veux !!! j'ai dis 1...6 pour faire un exemple
Si tu mets 1,2,3...6 tes paramètres vaudront 1,2,3...6 !!!
Si tu mets toto,tata,titi... tes paramètres vaudront toto,tata,titi...

Je sais pas si tu l'as fait mais va voir le lien que j'ai mis plus haut pour deux raisons : il te permet de lancer ton batch avec des paramètres et aussi de l'éxecuter en pas à pas tu verras donc quelles lignes merdent !!!
a b L Programmation
28 Janvier 2007 12:08:08

Lance par exemple ceci:
  1. batch.bat "c:\temp\test0" exe dll Vide "c:\temp\test1" "c:\temps\test2"


Comme ça dans ton code:
%0 = batch.bat
%1 = c:\temp\test0
%2 = exe
%3 = dll
%4 = Vide
%5 = c:\temp\test1
%6 = c:\temps\test2
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS