|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi? [ Archives Visual Basic / J'AI BESOIN D'AIDE !!!! :) ] (KidCode)
Informations & options pour cette discussion
|
lundi 13 janvier 2003 à 15:35:40 |
Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?

KidCode
|
Bonjour J'ai créé un fichier batch qui vérifie l'existence de fichiers dans un dossier et en fonction de ce qu'il trouve exécute ou non un traitement. Afin de répéter le "if exist" pour chaque fichier, j'ai passé la liste des fichiers dans une variable a%. "for a% in (fic1, fic2, etc..) do if exist a% goto :next else goto :error" Cette ligne de commande fonctionne bien jusqu'à goto :next. Le "else goto" n'est pas accepté par le système. Pourquoi? Comment puis-je faire?
|
|
|
|
lundi 13 janvier 2003 à 17:22:16 |
Re : Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?

rene38
|
Salut. Essaie : for %%a in (fic1, fic2, etc..) do if exist %%a goto next else goto error
------------------------------- Réponse au message : -------------------------------
> > Bonjour > > J'ai créé un fichier batch qui vérifie l'existence de fichiers dans un dossier et en fonction de ce qu'il trouve exécute ou non un traitement. > > Afin de répéter le "if exist" pour chaque fichier, j'ai passé la liste des fichiers dans une variable a%. > > "for a% in (fic1, fic2, etc..) do if exist a% goto :next else goto :error" > > Cette ligne de commande fonctionne bien jusqu'à goto :next. > Le "else goto" n'est pas accepté par le système. > > Pourquoi? > > Comment puis-je faire?
|
|
|
|
lundi 20 janvier 2003 à 19:36:07 |
Re : Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?

KidCode
|
Ok, parfait!
Je suis 1 peu circonspect devant la position des symboles % dans les fichiers batch.
Parfois 1 devant la variable puis 1 autre derrière.
D'autres fois 2 devant la variable, et rien derrière.
Cela reste bien mystérieux pour moi, sachant que les infos que j'ai pu glanées à ce sujet, n'explique jamais à fond les différents cas d'utilisation de syntaxe.
En tout cas encore merci à toi!
KidCode
------------------------------- Réponse au message : -------------------------------
> Salut. Essaie : > for %%a in (fic1, fic2, etc..) do if exist %%a goto next else goto error > > > ------------------------------- > Réponse au message : > ------------------------------- > > > > > Bonjour > > > > J'ai créé un fichier batch qui vérifie l'existence de fichiers dans un dossier et en fonction de ce qu'il trouve exécute ou non un traitement. > > > > Afin de répéter le "if exist" pour chaque fichier, j'ai passé la liste des fichiers dans une variable a%. > > > > "for a% in (fic1, fic2, etc..) do if exist a% goto :next else goto :error" > > > > Cette ligne de commande fonctionne bien jusqu'à goto :next. > > Le "else goto" n'est pas accepté par le système. > > > > Pourquoi? > > > > Comment puis-je faire? >
|
|
|
|
mardi 21 janvier 2003 à 00:17:33 |
Re : Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?

rene38
|
Bonsoir. Quelques indications sur MS-DOS
Commandes MS-DOS sur la ligne de commande +++++++++++++++++++++++++++++++++++++++++ 1) Exemple avec FOR FOR %f IN (*.TXT *.DOC) DO TYPE %f affiche (TYPE en DOS) tous les fichiers .TXT et .DOC Voir exemple 4 ci-dessous
Dans un fichier BATCH +++++++++++++++++++++ 2) %VAR% fait référence à la valeur de la variable système VAR préalablement définie. Voir la variable DESTIN ci-dessous
------------------------------------------ 3) %1, %2, ... font référence aux paramètres passés au fichier BATCH. Exemple le fichier COPIER.BAT appelé par COPIER C:\WINDOWS TRUC.TXT MACHIN.DOC copie les fichiers TRUC.TXT et MACHIN.DOC du dossier par défaut dans C:\WINDOWS
@ECHO OFF SET DESTIN=%1 <- 1er paramètre :COPIE SHIFT <-lecture du 2ème paramètre, puis du 3ème IF "%1"=="" GOTO FIN COPY %1 %DESTIN% GOTO COPIE :FIN ECHO Copie terminée ------------------------------------------- 4) Exemple avec FOR (le même que 1) FOR %%f IN (*.TXT *.DOC) DO TYPE %%f affiche (TYPE en DOS) tous les fichiers .TXT et .DOC ------------------------------------------- 5) Pas de ELSE EN DOS => ta commande est incorrecte for %%a in (fic1, fic2, etc..) do if exist %%a goto next else goto error Il faut écrire : FOR %%a IN (fic1, fic2, etc..) DO IF EXISTt %%a GOTO NEXT GOTO ERROR <- Si n'existe pas :NEXT Rem traitement si existe GOTO FIN <- pour sauter la section ERROR :ERROR Rem traitement si n'existe pas :FIN
Signé : un vieil usager de MS-DOS
------------------------------- Réponse au message : -------------------------------
> > Ok, parfait! > > Je suis 1 peu circonspect devant la position des symboles % dans les fichiers batch. > > Parfois 1 devant la variable puis 1 autre derrière. > > D'autres fois 2 devant la variable, et rien derrière. > > Cela reste bien mystérieux pour moi, sachant que les infos que j'ai pu glanées à ce sujet, n'explique jamais à fond les différents cas d'utilisation de syntaxe. > > En tout cas encore merci à toi! > > > > KidCode > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Salut. Essaie : > > for %%a in (fic1, fic2, etc..) do if exist %%a goto next else goto error > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > > > > Bonjour > > > > > > J'ai créé un fichier batch qui vérifie l'existence de fichiers dans un dossier et en fonction de ce qu'il trouve exécute ou non un traitement. > > > > > > Afin de répéter le "if exist" pour chaque fichier, j'ai passé la liste des fichiers dans une variable a%. > > > > > > "for a% in (fic1, fic2, etc..) do if exist a% goto :next else goto :error" > > > > > > Cette ligne de commande fonctionne bien jusqu'à goto :next. > > > Le "else goto" n'est pas accepté par le système. > > > > > > Pourquoi? > > > > > > Comment puis-je faire? > > >
|
|
|
Cette discussion est classé dans : fichier, for, goto, exist, batch
Répondre à ce message
Sujets en rapport avec ce message
Détruire son programme (Version 2) [ par Marneus73 ]
Bonjour à tous,Suite à ce sujet :http://www.vbfrance.com/infomsg_DETRUIRE-SON-PROGRAMME_1159599.aspx#24J'ai crée un fichier batch de destruction, mais
VBE Execution fichier batch [ par Triptek ]
Bonjour, J'aurais besoin de votre aide. Mon formateur ma demandé de faire une macro sous excel pour automatisé l'acquisition de données des disque dur
Programme VBS [ par tkhaled53 ]
Bonjour tout le monde, je suis un « très grand » débutant en programmation je suis là en espérant que je trouverai des réponses à mes interrog
Open pathname For APPEND... ??? [ par r3g3d1t ]
J'ai utiliser ce mode (Append) pour écrire dans un fichier. J'aimerais savoir comment aller chercher l'information de chaque ligne ?Ex.: le fichier co
Affichage d'un fichier texte dans une textbox ?? [ par hdm59 ]
Bonjour,Comment faut-il faire pour afficher le contenu d'un fichier texte (.txt) dans une textbox (ou dans autre chose) ?Pour être précis, je lance un
Problème avec fichier text [ par PtitJeoJeo ]
Tout d'abord merci de m'accorder un peu de ton temps !Alors voila mon problème :Je voudrais écrire dans un fichier text comme ceciopen "c:\essai.txt"
Compiler un fichier en code C en batch sous VB 6.0? [ par Kusanagi ]
Bonjour,j'aurai besoin pour mon appli VB6 de lancer en batch (par ligne de commande) une compil d'un bout de code en C. Le tout avec Visual Studio ins
Suppression de données dans un fichier!!!!!!!!!!!!!!! [ par waimea64 ]
HIbonjour, j'utilise une application qui enregistre des itemps dans des fichiers séquentielle selon le fonctionnement suivant: Open fichier For Out
Écriture dans un fichier [ par wbr ]
salut. je veu écrire un fichier mais le prog me di "File already open", le fichier existe pas encore et je vois pas dou vien le bugmon code:fnum = Fre
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|