[gilug.org] STDERR i STDOUT a un fitxer

Lluís Batlle i Rossell llbatlle aqsense com
2009-12-15 13:46:12 UTC


Mira't el manual de la bash, o de la shell que facis anar.

De tota manera:
comanda >& fitxer   (out i err al fitxer)
És equivalent a:
comanda > fitxer 2>&1
(equival, més o menys a: fork(); fd=open(file); dup(fd, 1); dup(1,2); 
exec())
Si no t'imagines els 'dup()', sembla una mica il·lògic l'ordre de "> 
fitxer 2>&1", no? :)

Apa!

Narcis Garcia - GiLUG wrote:
> En Quim Rovira em va ensenyar a unir la sortida d'error a la normal:
> comanda 2>&1
> 
> invisibilitzar els missatges d'error:
> comanda 2>/dev/null
> 
> i ara he trobat una manera de dirigir el primer a un fitxer:
> echo "$(comanda 2>&1)" >fitxer
> 
> ...però em trobo amb el problema de què no puc recuperar el resultat
> d'èxit/error de la comanda ($?) després de fer-ho així.
> Algú sap una sintaxi que permeti obtenir l'error, per a fer un programet
> així?
> 
> echo "$(sudo apt-get install qwerty 2>&1)" >/tmp/install.tmp
> Resultat=$?
> if [ $Resultat -ne 0 ] ; then cat /tmp/install.tmp ; fi
> rm /tmp/install.tmp
> 
> 
> Gracies.
> 
> 
> _______________________________________________
> Llista del GiLUG
> 
> http://gilug.org/cgi-bin/mailman/listinfo/llista
> * Tots els missatges queden publicats a:
> http://gilug.org/pipermail/llista/
> 
> 
> 





Més informació sobre la llista de correu gilug