Quando você corre
$ nohup some-command &
existe uma tarefa em segundo plano até some-command
sair. nohup
apenas desconecta o comando do terminal; disown
o remove da lista de trabalhos. Parece-me que a sua sintaxe pretendida é
$ nohup python test.py > a.out & disown
Observe que a sintaxe usada na pergunta tem > a.out
após o &
que termina o comando. Isso significa que a saída de test.py
não está sendo enviada para a.out
- em vez disso, ela está sendo anexada a nohup.out
como a mensagem indica.