On Fri, Oct 9, 2009 at 19:48, Ionel Mugurel Ciobica <[email protected]> wrote:
>
> 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 :-(((

Normal, paranteza e keyword bash, trebuie escapat:

pe...@hearth:~ $ i="all"; imag="f" ; if [ \( \( \( "$i" = "imaginar"
\) -o \( "$i" = "all" \) \) -a \( "$imag" = "f/i=" \) \) -o \( \( \(
"$i" = "regular" \) -o \( "$i" = "all" \) \) -a \( "$imag" = "f" \) \)
]; then echo foo ; fi
foo

parerea mea este ca poate ar trebui sa nu te zgarcesti la enter-uri si
if-uri si sa lasi ceva mai citibila chestia aia (ba chiar sa iei in
considerare sa o rescrii in perl/python).

-- 
Petre "don't thread on me" Ratiu

_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui