Accueil > Forum > > > > Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?
Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?
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ée 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
Ouvrir fichier en binaire SANS "Open file For Binary" [ par Munkyubi ]
Bonjour tout le monde,Bon alors voilà mon problème est de savoir si en VB6 il existe une méthode pour ouvrir un fichier en Binaire sans utiliser le ba
Probleme : Variable de controle de boucle 'for' incorrecte [ par sanzo666 ]
Bonjour, j'ai un petit problème avec un script qui vise à trier dans une liste de doublons les personnes (mise en argument dans le script) en ayant eu
Création d'un fichier batch en vb.net qui supporte les accents [ par r14 ]
[Aperçu de votre message] Bonjour à tous, j'ai fais un programme VB.NET qui créer un fichier .bat qui contient des commandes à exécuter. Certaines com
Crytage et decryptage qui fonctionne mais complication pour decryptage en copie ou en buffer [ par kevgd ]
Bonjour, J'ai adapter un code qui ma seduit par sa simplicité et efficacité dans un module. [url=http://www.vbfrance.com/codes/CRYPT-PETIT-PROG-CRYPTE
Selection dans un fichier de plusieurs chaines de caracteres et suppression des lignes les contenant [ par HUBMBA ]
je viens vers vous car je souhaite par un script en VBS lire un fichier quelconque et verifier l'existence de plusieurs chaines de caracteres, et quan
Débutant, quelques question [ par thetataz ]
Bonjour a tous, Je suis débutant en VB.NET, et je suis en train de me créé un programme, enfin cela resemble un peu plus a un batch, mais avec interf
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
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|