begin process at 2012 02 15 09:48:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

Fichier batch: "for...in...do...if exist...goto...else...goto" ne marche pas! pourquoi?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

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


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,983 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales