A razão pela qual o trabalho é interrompido é:
Qualquer trabalho que não seja o líder da sessão de terminal (como trabalho de plano de fundo) que tente executar E / S contra o terminal gera sinais: SIGTTOU ou SIGTTIN - um para tentar escrever no terminal e outro para tentar ler no terminal.
bash intercepta o sinal e coloca o processo de backgound em um estado parado.
Para lidar com a saída, tente:
some command > outputfile &
para lidar com a entrada, tente escrever para stdin do comando:
echo "answer1
answer2
" | command &
em que answer1 e answer2 são as respostas aos prompts.