On Wed, 4 Feb 2004 13:24:03 +0200 Serghei Amelian <[EMAIL PROTECTED]> wrote:
> On Wednesday 04 February 2004 12:46, Marius Pana wrote:
> > Commanda este in aceea variabla. Este o greseala? Cum as putea 'captura'
> > output'ul in caz de eroare si sa'l redirectionez?
> 
> Ar merge ceva de genul:
> 
> comanda="/bin/ls -lh *.bla"
> capture=`$comanda 2>&1` || echo "Eroare: $capture"
> 

Scriptul "xsu" mentionat in HOWTO-ul de X are niste exemple foarte interesante
de ce poti face cu descriptorii de input/output. Daca imi aduc bine aminte,
redirecteaza stdin/stderr/stdout prin alti descriptori (de la 3 in sus) si ii
foloseste cum are chef. Uneori comportamentul e similar cu folosirea unui
fifo, alteori e pur si simplu tratare unificata a erorilor. De exemplu:

test "$1" -eq "VERBOSE" && exec 2>&1 || exec 2>/dev/null

.. si nu mai trebuie sa stai sa redirectezi stderr la fiecare comanda.

-- 
GZ

--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui