Cuando termino "CTRL+C" el siguiente script
#!/bin/bash
function waa(){
for i in {1..10}
do
echo "start.sh: sleeping $i"
sleep 1s
done
}
trap "echo 'GAGA'" TERM
waa >> log.txt
¿El eco de la trampa "GAGA" va a log.txt? ¿Por qué ese comportamiento es así? ¿Muy poco intuitivo?
¡Gracias!
Respuesta1
Redirigió la salida estándar de waa
a log.txt
y activó trap
mientras se ejecutaba el script waa
. El echo
se ejecuta en ese contexto.
Si quieres que el eco vaya alconsola, puede intentar redirigirlo al error estándar, por ejemplo,
trap "echo 'GAGA' >&2 " TERM
(a menos que haya redirigido el error estándar al ejecutar el script, eso debería ayudar).