O programa clear
está escrevendo para a saída padrão , que é redirecionada pelo comando nohup
. Então isso não tem efeito no terminal.
Você pode ver a saída (de clear
) em nohup.out
.
Você pode fazer isso em vez disso:
nohup bash -c " sleep 20s; clear >/dev/tty; "
que informa ao shell para redirecionar a saída de clear
para o dispositivo tty
. Você pode usar o comando tty
para identificar o terminal dispositivo que você está usando, por exemplo,
nohup bash -c " sleep 20s; clear > $(tty); "
mas na maioria dos casos ambos funcionarão.
Você pode receber um aviso de nohup
, que pode ser silenciado:
nohup bash -c " sleep 20s; clear > $(tty); " 2>/dev/null