création d'un .bat de compète ! (test if)

création d'un .bat de compète ! (test if) - Win NT/2K/XP - Windows & Software

Marsh Posté le 31-03-2004 à 11:30:49    

bonjour a tous, voila j'aimerais dans un .bat tester l'existance d'un dossier et copier son contenu si il existe!
 
par exemple  
 
si le chemin C:\Documents and Settings\jeremie\Mes documents\ est bon
 
je copie tous les fichiers qui ce trouvent dans "mes documents"
 
le truc c'est que je ne sais pas si on peut faire ce genre de test dans un .bat
 
merci d'avance pour votre aide !


Message édité par mims1664 le 31-03-2004 à 11:31:36
Reply

Marsh Posté le 31-03-2004 à 11:30:49   

Reply

Marsh Posté le 31-03-2004 à 11:38:46    

Les tests conditionnels avec des batchs sont merdiques à souhait, voici par exempel comment tester la présence de fichiers (dans le cas présent dans le répertoire courant) :
 

Code :
  1. rem ##########################################################################
  2. rem Check that all files are available into current directory
  3. rem ##########################################################################
  4. IF NOT EXIST .\instsrv.exe   GOTO SRC1
  5. IF NOT EXIST .\srvany.exe    GOTO SRC2
  6. IF NOT EXIST .\SETI@home.exe GOTO SRC3
  7. IF NOT EXIST .\user_info.sah GOTO SRC4
  8. IF NOT EXIST .\sah2k.reg     GOTO SRC5
  9. IF NOT EXIST .\sahxp.reg     GOTO SRC6
  10. IF NOT EXIST .\sah2kmps.reg  GOTO SRC7
  11. IF NOT EXIST .\sahxpmps.reg  GOTO SRC8


 
Si tu cherche vraiment un langage de script pour plateforme Windows, je te conseille de t'orienter vers Windows Scripting Host, c'est bcp plus souple que les batchs :
 
- http://msdn.microsoft.com/scripting/
- http://www.microsoft.com/technet/c [...] fault.mspx

Reply

Marsh Posté le 31-03-2004 à 15:57:22    

oullla ca ne fonctionne toujours pas qq un connait il un bon site sur les .bat ???? je sais que c'est pas d'actualité mais ca dépanne encore bien !

Reply

Marsh Posté le 31-03-2004 à 16:04:49    

tu peux nous mettre ton code ?

Reply

Marsh Posté le 31-03-2004 à 16:35:17    

voila le début de mon code !
 
cd C:\Documents and Settings\
IF NOT EXIST .\%username%\Mes documents\*
pause
 
la il me met que 'Mes documents' n'est pas reconnu en tant que commande interne ou externe , un fichier exécutable ou un fichier de commande !!!!!!!!
 
bref il croit que c'est un programme !!


Message édité par mims1664 le 31-03-2004 à 16:35:54
Reply

Marsh Posté le 31-03-2004 à 16:48:07    

les .bat gèrent mal les noms longs il me semble.
donc soit tu le mets entre guillemets, soit tu utilises le nom 8.3

Reply

Marsh Posté le 31-03-2004 à 17:19:57    

je vais essayer merci du tuyau !

Reply

Marsh Posté le 01-04-2004 à 15:16:16    

bha ca fonctionne toujours pas !
 
je capte pas trop mais bon je vais continuer a chercher ... si quelqu'un a une idée je suis preneur !

Reply

Marsh Posté le 02-04-2004 à 08:49:26    

mims1664 a écrit :

voila le début de mon code !
 
cd C:\Documents and Settings\
IF NOT EXIST .\%username%\Mes documents\*
pause
 
la il me met que 'Mes documents' n'est pas reconnu en tant que commande interne ou externe , un fichier exécutable ou un fichier de commande !!!!!!!!
 
bref il croit que c'est un programme !!


 
Et le GOTO tu crois qu'il sert à quoi ? Ensuite il manque le nom du fichier dont tu testes l'existence, si je me rappelle bien tu ne peux pas vérifier l'existence d'un répertoire simplement.
 

Code :
  1. @ECHO OFF
  2. CD C:
  3. CD \
  4. CD "C:\Documents and Settings"
  5. CD %USERNAME%
  6. CD "My Documents"
  7. ECHO.
  8. IF NOT EXIST .\monfichier.txt GOTO NOFILE
  9. GOTO FILEOK
  10. :NOFILE
  11. ECHO Fichier monfichier.txt est manquant !
  12. GOTO FINISH
  13. :FILEOK
  14. ECHO Fichier monfichier.txt est présent !
  15. GOTO FINISH
  16. :FINISH
  17. ECHO.


Message édité par Requin le 02-04-2004 à 08:49:41
Reply

Marsh Posté le 04-04-2004 à 22:35:18    

ok merci monsieur je vais essayer cela... dsl pr le temps de reponse ! j'etais en we !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed