Tester si on a un fichier en batch

Fermé
eriacl - 17 août 2009 à 19:54
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 - 18 août 2009 à 04:04
Bonjour,

J'ai réalisé un script en shell et je cherche à le mettre en batch.

J'ai cherché sur le net mais je ne trouve pas en batch l'équivalent de
if [ -f $mon_fichier ]; then
qui teste en shell si la variable est un fichier et de la même façon
if [ -d $mon_dossier ]

Est-ce que la fonction 'if' en batch le fait?

Merci :o)
A voir également:

1 réponse

cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
18 août 2009 à 04:04
Bonjour,

Il existe en batch la fonction EXIST qui semble répondre à ton attente :
SET "nom_chemin=C:\Documents and Settings\Christian\Mes documents\lib_courante\"

rem 1 (Le chemin/dossier est testé.)
 IF EXIST        "%nom_chemin%" (
                   ECHO OK le Dossier "%nom_chemin%" existe bien.
) ELSE (
                   ECHO NOK le Dossier "%nom_chemin%" n'existe pas. )

rem 2 (Le chemin complet est testé)
SET "nom_fichier=mon_fich.ext" 
 IF EXIST        "%nom_chemin%%nom_fichier%" (
  ECHO OK le couple chemin_fichier "%nom_chemin%%nom_fichier%" existe bien.
) ELSE (
  ECHO NOK le couple chemin_fichier "%nom_chemin%%nom_fichier%" n'existe pas. )

rem 3 (Positionnement par CD sur le répertoire. Inutile si le fichier se trouve 
rem    dans le répertoire courant)
CD  "nom_chemin=C:\Documents and Settings\Christian\Mes documents\lib_courante"

SET "nom_fichier=mon_fich.ext" 

 IF EXIST        "%nom_fichier%" (
                   ECHO OK le fichier "%nom_fichier%" existe bien.
) ELSE (
                   ECHO NOK le fichier "%nom_fichier%" n'existe pas. )

1