Aqui está um script de shell de brinquedo:
#!/bin/bash
set -e
misspelled_command
exec > run_$( date +%Y%m%d ).log 2>&1
echo "Logging"
exit
Se eu enviar com nohup bash raise_errors.sh > /dev/null 2> errors.log &
, o erro será registrado em errors.log como esperado:
$ cat errors.log
nohup: ignoring input
raise_errors.sh: line 5: misspelled_command: command not found
Existe alguma maneira de redirecionar o erro para aparecer ao usuário no terminal em vez de errors.log
? Além disso, por que nohup: ignoring input
aparece e como pode ser evitado?