Tom's Guide > Forum > Programmation > [ RESOLU ] [BATCH] Fichier *.* ??

[ RESOLU ] [BATCH] Fichier *.* ??

Forum Programmation : [ RESOLU ] [BATCH] Fichier *.* ??

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

je réalise un batch qui test la présence de fichiers de tout type dans un dossier par la commande

If exist "R:\msdos\*.*" goto copie
goto fin

Cette commande me semble simple.

Le problème que je rencontre est que commande sort sur goto copie alors que le dossier est vide.

J'ai supprimé et recréé le dossier pour etre sur qu'il soit bien vide.
Quand je passe ma souris dessus windows me marque bien "ce dossier est vide"

auriez vous une idée de la raison pour laquelle il valide quand meme la commande ?

merci de vos réponses

tomtom


Message édité par tomtom30 le 28-09-2008 à 12:50:37
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Bonjour,

Tu ne peux pas vérifier en batch le vide d'un dossier de cette manière.

Fais un dir dans ton dossier vide. Tu verras que tu n'auras pas fichier introuvable, mais :

<REP> .
<REP> ..

Il me semble que cela indique les dossiers parents.. Mais je n'en suis plus sûr ..
Bref, ton *.* trouvera ces deux répertoires (présents par défaut partout), et donc ça ne marchera pas.

------------------------------ >> Centre de Formation Helpers <<
Répondre à XmichouX

Peut-être à cause des raccourcis . et ..

 

C'est pour en faire quoi? Si c'est juste copie, tu fais la copie, si c'est pour faire une action sur les fichiers, autant faire un FOR /F sur un DIR /B

 

EDIT: pas assez rapide :)
. => répertoire courant
.. => répertoire parent


Message édité par CRicky le 27-09-2008 à 15:07:10
------------------------------ 6800A007B81300CD10B00131C989CF26880541
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky

Merci pour l'info Cricky, je ne me souvenais plus exactement ;)

------------------------------ >> Centre de Formation Helpers <<
Répondre à XmichouX

en fait c'est pour faire une action de copie mais sur un réseau,
donc demarrage, ping, copie, extenction.
C'est pour ca que je veux verifier la présence de fichiers a copier avant de lancer toutes ces actions.

Répondre à tomtom30

Et bien tu fais une FOR /F sur un DIR /B et tu peux compter le nombre de répertoires et fichiers.
http://fr.wikibooks.org/wiki/DOS/F [...] e_commande
Par contre si ton répertoire est vide ça ne fonctionnera pas.

------------------------------ 6800A007B81300CD10B00131C989CF26880541
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky

Merci beaucoup mon batch est a présent terminer et fonctionne très bien.
Je suis en train de le faire passer sur un log.txt j'aurais surement besoin de votre aide.

Je vous tiens au courant

merci encore

Répondre à tomtom30
Tom's Guide > Forum > Programmation > [ RESOLU ] [BATCH] Fichier *.* ??
Aller à :

Il y a 2238 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens