Je suis en train d'écrire un bat pour filtrer des données d'une base de donnée exportée en csv selon la valeur du 3eme champ (si le 3eme champ a cette valeur, je recopie la ligne dans un autre fichier, sinon je passe à la ligne suivante). Le problème étant que certains de ces champs sont vides.
Globalement, j'ai a disposition des fichiers du type
val1;val2;val3;val4
val5;val6;;val7
val8;;val9;val10
J'utilise une boucle for du genre :
Code :
Code : Tout sélectionner
for /f "tokens=1-4 delims=;" %%a in fichier) do (
if %%c==%valeur que je veux% (
echo %%a;%%b;%%c;%%d>>%autre_fichier%
)
)
%%a = val5
%%b = val6
%%c = val7
%%d = "" (il ne considère pas de 4eme champ)
alors que je voudrais ca :
%%a = val5
%%b = val6
%%c = "" (chaine vide)
%%d = val7
J'ai eu beau chercher sur google, puis sur batcher.fr, je ne trouve pas la moindre piste de solution alors que j'ai trouvé quelques posts sur le même problème.
Bref si vous avez des suggestions, elles sont bienvenue, et merci d'avance pour votre aide !