Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2203 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  batch-condition "ou"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

batch-condition "ou"

n°1376907
baobazz
Posté le 29-05-2006 à 18:12:56  profilanswer
 

Bonjour,
 
Je souhaite créer un batch qui en lance un autre seulement si le jour qu'on est le lundi ou le mardi.
J'arrive à extraire le nom du jour mais je ne sais transcrire une instruction conditionnelle "ou". Si qqn pouvait bien m'éclairer!
 
Pour l'instant, je ne lai fait que pour un jour, vu que je ne sais pas le faire pour plus...
 
rem on traite la date pour en extraire le nom du jour
FOR /F "delims=. tokens=1,2" %%A IN ('date /t') DO SET joursem=%%A& SET date=%%B
if "%date%"=="" SET date=%joursem%
 
rem on appelle le batch inventaire2.bat et on lui transmet le paramètre standard
if "%joursem%"=="lun" call inventaire2.bat standard
 
Merci!

mood
Publicité
Posté le 29-05-2006 à 18:12:56  profilanswer
 

n°1377097
wackevat
Posté le 29-05-2006 à 23:01:42  profilanswer
 

Code :
  1. if cond1 (
  2.   faire_ceci
  3. ) else if cond2 (
  4.   faire_cela
  5. )

n°1377187
baobazz
Posté le 30-05-2006 à 09:12:48  profilanswer
 

en gros, pour ma condition "ou", je nai guère le choix, je dois utiliser cette syntaxe?
faire_ceci et faire_cela seront donc les mêmes instructions avec cond1:jour=Lundi et cond2:jour=Mardi
 
Il n'y a pas de syntaxe spéciale type:
if "%joursem%"=="lun" ou "mar"  call inventaire2.bat standard
 
??  

n°1377236
wackevat
Posté le 30-05-2006 à 10:08:38  profilanswer
 

baobazz a écrit :

en gros, pour ma condition "ou", je nai guère le choix, je dois utiliser cette syntaxe?


Oui.

n°1377281
baobazz
Posté le 30-05-2006 à 10:24:24  profilanswer
 

ce qui est assez contraignant, lorsque bcp d'éléments spont inclus dans ma condition "ou":
si jai 5 éléments, je devrai faire:
if cond1 (
faire-cela
) else if cond2 (
       faire_cela
      )  
) else if cond3 (
       faire_cela
      )  
) else if cond4 (
       faire_cela
      )  
) else if cond5 (
       faire_cela
      )  
 
c'est assez redondant. Il n'y a pas moyen de simplifier ces instructions?
 
peut-être qu'avec une boucle, cela est possible. je v voir ça si cela n'est pas possible autrement.
 
Merci!
 
 
 

n°1377384
wackevat
Posté le 30-05-2006 à 11:28:32  profilanswer
 

Par exemple :

Code :
  1. for %%v in (
  2.   val1
  3.   val2
  4. ) do (
  5.   if "%var%" == "%%v" (
  6.     faire_cela
  7.     goto suivant
  8.   )
  9. )
  10. :suivant

n°1377397
baobazz
Posté le 30-05-2006 à 11:45:11  profilanswer
 

ok merci bcp!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  batch-condition "ou"

 

Sujets relatifs
condition en asciiBATCH DOS :Comment passer les paramètres à partir d'un fichier ?
[RESOLU] Comment lancer excel en mode batch ?[Batch]verifier les fichiers et copier les modifiés uniquement??
[Resolu] BATCH - comment executer un programme 32 bit ?[batch] EnableDelayedExpansion et "!" dans les chemins de fichier
Script batch automatisation[BATCH] positionner le errorlevel
Batch pour transférer fichiers antérieurs à 2 joursCondition Batch
Plus de sujets relatifs à : batch-condition "ou"


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)