nohup é ineficaz contra watch porque watch instala um manipulador de sinal para SIGHUP , que substitui o instalado por nohup .
nohup funciona configurando o manipulador de sinal para SIGHUP para SIG_IGN , o que faz com que o sinal seja ignorado e, em seguida, executa o programa que foi solicitado a executar. Isso funciona bem com programas de destino que deixam os sinais configurados da maneira como estavam quando começaram, o que significa principalmente programas que não prestam atenção aos sinais. Mas watch instala um manipulador de sinal para SIGHUP e outros sinais (para o propósito de restaurar as alterações que ele faz nas configurações do terminal antes de sair).