Szia,
nem tudom mitől szeretnél függővé tenni a sorok olvasását de valami hasonló ötletem lenne:
1, - Ha már a ciklus megkezdése előtt tudod, hogy mettől meddig akarsz olvasni a file-ban
A cikluson belül legyen egy valtozod, ami tartolja hanyadik sornal jarsz. Numerikus, mindig lepteted eggyel, belepes elott nullazod.
a ciklusba lépés előtt megadsz két változót, ami tarolja mettől meddig kell olvasni a file-ban.
A for ciklus do-n belül részét egy if-el kezdd. Nézd meg, hogy a sorváltozód nagyobb vagy egyenlo mint elso sor és kisebb vagy egyenlő mint utolsó sor. (LEQ, GEQ) Ha mind két feltétel teljesül akkor fusson csak le a do-n belüli rész. (Az if után a zárójelen belül ugyanúgy lehet több parancs, mint a do-nál)
2, - Ha azt szeretnéd, hogy elindulsz mondjuk első sortól és addig olvasson amig mondjuk nem talál egy Kék-et, akkor pedig valami hasonló a helyzet
A ciklusba lépés előtt adsz neki egy váltózot, hogy pl. "kellemegolvasni=YES".
A do-n belüli részen pedig azt mondod neki, hogy a sort csak akkor fusson arra a sorra, ha kellemegolvasni==YES (a többi részt szintén bezárójelezed). Ha megtalálod abban a sorban ami azt eredményezi, hogy már nem kell a következő sort olvasni akkor pl:
if %%A==kék akkor set kellemegolvasni=no
így is végig fogja olvasni a file-t, de az első kék után már nem fog lefutni az a parancs amit függővé tettél a kellemegolvasni változótól.
mindkét esetben szükséges a környezeti változók késleltetett behelyettesítésének előzetes engedélyezése
SETLOCAL enabledelayedexpansion
sok sikert!
Üdv,
Csontikka
[ Szerkesztve ]