Pages

[Batch] Récupération de variable Fichier CSV sujet

jeudi 27 mars 2014




bonjour Terre Tous,

Voila j'ai un petit souci psyco-technique pour finir mon Batch... Je vous explique mon problème:

Je voudrais récupérer une variable contenu dans un fichier CSV. J'ai un fichier csv qui se compose de la manière suivante:
ip1;chemin1
IP2;chemin2
IP3;chemin3
...

Je souhaiterai assigner le cheminX à une variable Y correspondant à la variable IPX.
en gros mon résultat c'est ça :
Si IP== IP1 alors Y=chemin1.

Voici un bout de code :

@echo off

REM je récupere mon IP
for /F "tokens=15-18 delims=:." %%i in ('ipconfig^|find "Adresse IPv4"') do (
set IP=%%i.%%j.%%k.%%l
)

setlocal enabledelayedexpansion

REM Je mets chaque lignes de mon csv dans un tableau
set c=0
for /f "tokens= 1,2 delims=;" %%a in ('type D:\test.csv') do (
Set table[!c!]=%%a REM ===> colonne1
Set table[!d!]=%%b REM ===> colonne2
Set /a c+=1
)


REM Si mon ip se trouve dans une des valeurs du tableau alors il faut récupérer la variable chemin correspondante.
Set /a c-=1

For /L %%a in (0,1,%c%) do (
if "%IP:~1%" == "!table[%%a]!" set test=table[%%b]! REM ==> c'est sur cette ligne au niveau du set que je n'arrive pas à récupéré %%b correspondant à %%a
)


J'espère avoir été assez clair et précis ;)
Merci par avance pour votre aide !!! et merci quand même si vous ne savez m'aider ;)

mart




Aucun commentaire:

Enregistrer un commentaire