On 9-10-2009, at 18h 21'44", Petru Ratiu wrote about "Re: [rlug] complex if
conditions in bash"
> 2009/10/9 Ionel Mugurel Ciobica <[email protected]>:
> >
> >
> > Expertilor de bash, o intrebare simpla: cum scriu urmatoarea conditie:
> >
> > if ( ( ( cond 1 OR cond 2 ) AND cond 3 ) OR
> > ( ( cond 4 OR cond 5 ) AND cond 6 ) )
>
> man [ (sau mai familiarul man test). vezi operatorii -o si -a, plus
> paranteze.
Din pacate man [ nu zice cum si cite paranteze am voie. Dupa modelul
asta vin si eu cu solutia asta:
if [ ( ( ( "$i" = "imaginar" ) -o ( "$i" = "all" ) ) -a ( "$imag" = "f/i="
) ) -o ( ( ( "$i" = "regular" ) -o ( "$i" = "all" ) ) -a ( "$imag" = "f" ) ) ];
then
care nu merge. Nu-i place paranteza rotunda :-((( Am rupt-i in cit mai
multe rinduri si am constata ca nu-i place a doua paranteza rotunda.
Deci cum grupez expresii mai complicate?
Asa nu merge:
if [ ( ( ( conditie 1 ) -o ( conditie 2 ) ) -a ( conditie 3 ) ) -o \
( ( ( conditie 4 ) -o ( conditie 5 ) ) -a ( conditie 6 ) ) ]; then
Mersi,
Mugurel
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug