Aide programmation Batch

Fermé
Dest - 16 févr. 2009 à 13:53
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 - 17 févr. 2009 à 09:31
Bonjour,

Serait il possible de creer une sorte de formulaire en batch
je m'explique:
j'ai actuellement un fichier global.txt dans lequel se trouve plusieurs lignes tel que :
1____bureau.txt
2____document.txt
3____compta.txt

et qui correspondent a 3 fichiers (compta, bureau et document)

Est il possible de couper le premier caractere de chaque ligne (a savoir les numero), de les mettre dans une variable,
et de comparer cette variable avec une autre variable ecrit prealablement?

J'aimerai tout simplement demander a la personne voulant faire le backup d'un des fichiers de selectionner un numero, qui sera ensuite comparer au numero du fichier global.txt, et de renvoyer dans une variable le nom complet.

Exemple :

Quel fichier voulez vous uploader?
1
...
le fichier "1____bureau.txt" a ete uploader.

Merci d'avance

3 réponses

cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
16 févr. 2009 à 16:01
Bonjour,

Voici une maquette de ce qu'il est possible de faire:

echo off

SETLOCAL ENABLEdelayedExpansion
SETLOCAL ENABLEextensions
CLS
       SET "nomF_txt=%USERNAME:~0,+3%-global.txt"
       SET "nom_complet="
       SET /A n = 1
       
       SET /p "no_saisi=Quel fichier voulez vous uploader?  "

       FOR /F   "tokens=1 delims=" %%J IN  (%nomF_txt%)   DO (
               SET "chaineZ=%%J"
rem pour test visuel  ECHO   !chaineZ:~0,+%n%!
               IF  "!chaineZ:~0,+%n%!"  ==  "!no_saisi!" (
                   SET "nom_complet=%%J"                 )   )
                   
        ECHO Nom du fichier selelctionne :  %nom_complet%
        IF "%nom_complet%"            ==  ""                          (
           ECHO VALEUR SAISIE INCORRECTE {doit etre egale a 1, 2 ou 3} )

       GOTO                                                         :EOF


Contenu de global.txt:
1____bureau.txt
2____document.txt
3____compta.txt

Résultat :

Quel fichier voulez vous uploader? 2
Nom du fichier selelctionne : 2____document.txt

OU

Quel fichier voulez vous uploader? 4
Nom du fichier selelctionne :
VALEUR SAISIE INCORRECTE {doit etre egale a 1, 2 ou 3}
0
Merci beaucoup :)
0
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
17 févr. 2009 à 09:31
GG le script batch gg moi ça ce se limite à echo Hello world :)
0