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 :

Contrôler les arguements [Batch]


Sujet :

Scripts/Batch

  1. #1
    Expert éminent

    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juillet 2004
    Messages
    2 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 756
    Points : 6 686
    Points
    6 686
    Par défaut Contrôler les arguements
    Bonjour,

    Voici le script suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    @ECHO OFF
    
    REM.-- Version history --
    REM         X.X.X YYYYMMDD   Author  Description
    SET version=1.2.1 &:20150916 olivier initial version
    SET version=%version: =%
    
    REM.-- Set the default color of the command prompt --
    COLOR 07
    
    REM.-- Set the title --
    SET title=%~nx0 %version%
    TITLE %title%
    
    REM.-- Set default variables --
    SET tmp_i=index.txt.tmp
    SET def_i=index.txt
    SET tmp_di=index.diff.tmp
    SET def_di=index.diff
    SET findstr=findstr.exe
    SET diff=diff.exe
    
    REM.-- Do something useful --
    SET "args=-v -chk -gen -cmp -dpl"
    SET "drvs=a b c d e f g h i j k l m n o p q r s t u v w x y z"
    
    IF [%1]==[] (
     GOTO:-h
    )
    
    IF "%1"=="-v" (
     IF NOT [%2]==[] (
      GOTO:-h
     )
     GOTO:-v
    )
    
    FOR %%a IN (%drvs%) DO (
     IF "%1"=="-chk" (
      IF "%2"=="%%a:\%def_i%" (
       GOTO:-chk
      )
      IF "%2"=="%%a:\%def_di%" (
       GOTO:-chk
      )
     )
    )
    GOTO:-h
    EXIT /b
     
    :-chk
    ECHO.
    IF EXIST %2 (
     ECHO %2 : file found
    ) ELSE (
     ECHO %2 : file not found
    )
    GOTO:EOF
     
    :-gen
    ECHO GEN
    GOTO:EOF
     
    :-cmp
    ECHO CMP
    GOTO:EOF
     
    :-dpl
    ECHO DPL
    GOTO:EOF
     
    :-v
    ECHO %version%
    GOTO:EOF
     
    :-h
    ECHO usage: %~nx0 [ -v ]
    ECHO        %~nx0 [ -chk ^| -gen ^| -cmp ^| -dpl ] index.txt or .diff
    ECHO.
    ECHO -v     : display version number and exit
    ECHO -chk   : check if file exist
    ECHO -gen   : generate output file
    ECHO -cmp   : compare output file
    ECHO -dpl   : display output file
    GOTO:EOF
    - Actuellement, je test la boucle FOR IN DO pour l'argumet -chk. Les tests fonctionnent uniquement si le fichier index.txt et/ou index.diff est à la racine du disque. Je ne parviens pas à écrire le test qui pourrait envisager que les deux fichiers se trouvent dans un répertoire ou bien un sous répertoire.

    Pourriez-vous me donner un petit coup de main s'il vous plaît ? Merci
    .Olivier

  2. #2
    Membre expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Points : 3 768
    Points
    3 768
    Par défaut
    Salut Olivier,

    J'ai pas vraiment compris ton problème

    ________________________________
    Un p'tit coup de pouce ça fait toujours plaisir, pensez-y !
    ________________________________

  3. #3
    Expert éminent

    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juillet 2004
    Messages
    2 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 756
    Points : 6 686
    Points
    6 686
    Par défaut
    Ne faut pas tenir compte de ce post, j'ai opté pour une autre methode
    .Olivier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Access VBA : comment contrôler les marges d'un état
    Par CBleu dans le forum VBA Access
    Réponses: 7
    Dernier message: 18/04/2007, 14h56
  2. [Sécurité] COntrôler les accés
    Par big1 dans le forum Oracle
    Réponses: 5
    Dernier message: 21/06/2006, 10h54
  3. Contrôler les saisies clavier
    Par Pragmateek dans le forum C
    Réponses: 8
    Dernier message: 06/05/2006, 18h17
  4. [MySQL] Contrôler les modification apportées
    Par cari dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 06/03/2006, 15h38
  5. Contrôler les cases à cocher
    Par benny7 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/08/2005, 16h26

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