exec 3>&1 # Save current "value" of stdout.
ls -l 2>&1 >&3 3>&- | grep bad 3>&- # Close fd 3 for 'grep' (but not 'ls').
# ^^^^ ^^^^
exec 3>&- # Now close it for the remainder of the script.
Obtengo la tercera línea donde se cierra fd 3.Ayúdame a entender esta simple redirección io en bash de la guía de ABS
Dudas: La primera línea redirige fd 3 a stdout, globally ... ¿verdad?
Preguntas: ¿Qué está pasando en la 2da línea? Proporcione una explicación detallada si es posible.
Aunque se pueden hacer trucos complicados con descripciones adicionales en * sh, si esto se debe hacer al pobre schlub que tiene que leerlo a continuación (por ejemplo, usted) es menos cierto. – msw
@msw Estaba mirando tu perfil y parece que tienes muy buen conocimiento sobre el shell de Linux/UNIX, etc. Te respeto por eso, pero no aprecio que me llames un schlub. Si no puede ayudar, por favor guarde sus chistes para usted. – abc
También soy el pobre alumno que a menudo tiene que volver a leer mi propio código en una fecha posterior. Lamento que hayas tomado mi comentario personalmente, ya que era genérico, tenía la intención de ser algo autodestructivo, y sin duda ** no ** tenía la intención de insultar. Gran parte de mi perfil es ficción, aparte de que yo soy demasiado tiempo. – msw