IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Traitement erreur de la command forfiles


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 401
    Par défaut Traitement erreur de la command forfiles
    Bonjour

    Dans un fichier batch, j'utilise la commande forfiles de façon à sélectionner un groupe de fichier selon certains critères.

    Quand aucun fichier n'est trouvé, l'erreur "ERROR: No files found with the specified search criteria." est affichée dans la ligne de commande.

    Je voudrais savoir si il est possible de, dans ce cas là, traité l'erreur retournée par la commande de façon à exécuter une certaine action.

    Par exemple, en language algoritmique:

    if forfiles has results then
    print "ok"
    else
    print "not ok"
    Merci

  2. #2
    Membre Expert Avatar de Drizzt [Drone38]
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2004
    Messages
    1 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 001
    Par défaut
    Regarde du coté de la variable %ERRORLEVEL%.
    Avec un peu de chance forfiles la renseignera avec des valeurs exploitables.

  3. #3
    Membre expérimenté Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Par défaut
    il y a aussi un truc très pratique fortement utilisé sous les différents shell *nix et qui est sous utilisé en batch à mon sens... qui s'appuie sur %errorlevel% (comme évoqué par Drizzt ) et qui fonctionne donc avec toutes les commandes enfin je crois : D :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    COMMANDE && (goto fonction1 ) || (goto fonction2 )
    ou encore si %errorlevel% ne suffit pas on peut compléter avec une recherche de chaine de caractère en sortie de commande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    COMMANDE | findstr /i /c:chaine && (goto fonction1 ) || (goto fonction2 )

    Perso j'en abuse dans mes scripts et je trouve ça énormément plus souple que l'utilisation d'%errorlevel% après c'est comme tout, chacun fait comme ça lui semble plus pratique

    Enjoy

Discussions similaires

  1. erreur sur la commande eroute
    Par irnatene dans le forum Sécurité
    Réponses: 2
    Dernier message: 17/02/2007, 14h12
  2. Erreur avec la commande free
    Par be_tnt dans le forum C
    Réponses: 17
    Dernier message: 14/06/2006, 11h20
  3. Traitement erreur mySQL
    Par shub dans le forum Requêtes
    Réponses: 13
    Dernier message: 05/04/2006, 14h48
  4. Rediriger les erreurs d'une commande
    Par GLDavid dans le forum Langage
    Réponses: 9
    Dernier message: 10/11/2005, 21h03
  5. Traitement erreur IdSocketError Composant Indy
    Par goldkey dans le forum Composants VCL
    Réponses: 1
    Dernier message: 05/06/2005, 12h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo