Uplink wrote:
Mihai Maties wrote:
On Wednesday 16 August 2006 01:38, Uplink wrote:
Cu '[' si 'test' nu le mai am demult, dar '[[' are '-ne', '-eq', '-lt',
etc. pt. compararea de numere, din nou, quotate, pentru a preveni
expandarea aiurea.
'test' si '[' sunt aproape totuna, la fiecare test de genul asta se
executa o comanda externa. '[[' se executa intern in bash, de aceea
este mai eficient.
'[[' e backwards compatible cu '[' si 'test', dar in plus mai are si
alti operatori decat cei "standard".
Well... [[ nu prea e backwards compatible cu [/test. In [[ scrii "&&"
si "||", unde in [/test scrii "-a" si "-o". Cand am trecut de la [ la
[[, m-am ars un pic cu astea. Also, in [[ din bash 2 ai glob patterns
la compararea de siruri, precum in exemplul: [[ "$unstring" ==
*"vaca"* ]], care in [ se expandeaza ca filename-uri si strica toata
afacerea.
La care mai adaug: [[ suporta asociativitate, pe cand [/test nu.
Exemplu: [[ ( 1 != 1 ) || ( ( 1 != 2 ) && ( 2 == 3 ) ) ]] # nota:
stringuri, nu numere
_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug