$ sleep 10 &
[1] 24446
$
[1]+ Done sleep 10
Os [1] 24446
e [1]+ Done ...
são impressos pelo shell. De man bash
:
When bash starts a job asynchronously (in the background), it prints a
line that looks like:
[1] 25647
Você pode desativar a saída Done
desativando o modo monitor:
set +m
Você não pode desativar o primeiro formulário em um shell interativo, no entanto. Em vez disso, tente executar em um subshell:
$ (gedit &> /dev/null &)
$
se você usar isso, o processo em segundo plano não estará mais sob controle do trabalho do shell.
Uma nota lateral, &>
pode ser usada para redirecionar stdout e stderr juntos.