Salamon Attila wrote:
> Sziasztok!
> 
> Megvan a megoldás! :)
> xx.mf:
> if ( "a" eq "a" )
> {
>     echo "a=a: ok"
> }
> if ( 0 )
> {
>     echo "0 is not null: er"
> }
> 
> echo test | maildrop -V3000  xx.mf 2>&1 | grep -v Tokenized
> ...
> xx.mf(6): Evaluating IF condition.
> xx.mf(6): Operation on: a and a - string equal, result is 1
> xx.mf(6): IF evaluated, result=1
> a=a: ok
> xx.mf(18): Evaluating IF condition.
> xx.mf(18): IF evaluated, result=0
> 0 is not null: er
> ...
> 
> Ebből látszik, hogy jól értékeli ki a kifejezést, de valamiért mégis 
> lefut az if -ág.
> 
> Nem tudom, hogy hogy, de windows -os sorvég karakterek is leldzettek a 
> szűrőfileban. És azt sem, hogy ettől miért futott le minden kretén if 
> -blokk, de emiatt volt.

Csak tipp, de: a dos-os sorvef cr+lf, *nixon csak lf, gondolom a 
maildrop mindkettot ujsorkent ertelmezi, emiatt az if es az 
utasitasblokk kozott lesz egy ures sor es emiatt kulonallo blokknak 
ertelmezi azt, ami a {} kozott van, es mindig vegrehajtja, nem csak 
akkor, amikor a kifejezes igaz, illetve ez esetben nem csinal semmit, 
mert nincs utasitas az if utan.


-- 
Gabor HALASZ <[EMAIL PROTECTED]>
_________________________________________________
linux lista      -      [email protected]
http://mlf2.linux.rulez.org/mailman/listinfo/linux

válasz