Récupérer des variables d'un fichier INI

Récupérer des variables d'un fichier INI - Shell/Batch - Programmation

Marsh Posté le 04-01-2013 à 11:30:19    

Bonjour,
je cherche depuis un moment mais sans résulat. Je viens donc demander votre aide svp.
 
Lorsque mon fichier ini (conf.ini) est constitué de seulement 2 variables comme ceci:
 

Citation :

1)Repertoire et fichier source=base test
2)Nom du serveur=test


 
mon batch solu1.bat se présentant comme ceci:
 

Citation :

REM #-------------------------------#
REM # V,rifie l'existence #
REM # du fichier conf.ini #
REM #-------------------------------#
   :Verifini
    IF NOT EXIST Conf.ini (
 ECHO Fichier Conf.ini introuvable
 PAUSE
EXIT)
 
REM #---------------------------------------#
REM # Récuperation des variables #
REM # contenues dans conf.ini  #
REM #---------------------------------------#
   :Init
 FOR /F "EOL=2 TOKENS=2 DELIMS==" %%I IN (Conf.ini) DO SET SRC=%%I
 FOR /F "EOL=1 TOKENS=2 DELIMS==" %%I IN (Conf.ini) DO SET SRV=%%I


 
je fais un echo sur SRC et SRV et me redonne bien les bonnes variables.
 
mais lorsque je veux en mettre plus que 2 c'est à dire 3 , là ça ne fonctionne pas.
Dans mon nouveau fichier INI je fais:
 

Citation :

1)Repertoire et fichier source=base test
2)Nom du serveur=test
3)Processus=Monprocessus


 
Et dans mon batch je fais:
 

Citation :

REM #-------------------------------#
REM # V,rifie l'existence #
REM # du fichier conf.ini #
REM #-------------------------------#
   :Verifini
    IF NOT EXIST Conf.ini (
 ECHO Fichier Conf.ini introuvable
 PAUSE
EXIT)
 
REM #---------------------------------------#
REM # Récuperation des variables #
REM # contenues dans conf.ini  #
REM #---------------------------------------#
   :Init
 
 FOR /F "EOL=3 TOKENS=2 DELIMS==" %%I IN (Conf.ini) DO SET SRC=%%I
 FOR /F "EOL=2 TOKENS=2 DELIMS==" %%I IN (Conf.ini) DO SET SRV=%%I
 FOR /F "EOL=1 TOKENS=2 DELIMS==" %%I IN (Conf.ini) DO SET SRA=%%I
 
echo %SRA%
echo %SRC%
echo %SRV%


 
voilà le résultat que j'obtiens donc:
 

Citation :

Monprocessus
test
Monprocessus


 
 
quand je regarde les résultats des commandes à 2 variables les données misent dans les variables sont bonnes , mais à 3 sur une même commande j'ai 2 SET qui se font ce qui me donnent des variables completmeent fausse.
 
Quelqu'un aurait t'il une idée svp?
 
En vous remerciant par avance


Message édité par luffy324 le 04-01-2013 à 14:39:46
Reply

Marsh Posté le 04-01-2013 à 11:30:19   

Reply

Marsh Posté le 04-01-2013 à 11:47:05    

J'y connais rien en batch, pourquoi es for ne sont pas allignés ?

Reply

Marsh Posté le 04-01-2013 à 14:40:14    

Non c'est dans la rédaction ça à mit un espace mais sinon sa reste identique

Reply

Marsh Posté le 07-01-2013 à 10:17:17    

personne n'aurait une idée svp?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed