Como executar o processo em segundo plano com a saída no arquivo após algumas ações de entrada / saída de primeiro plano no linux?

0

Eu inicio um processo e interajo com ele (algumas ações de entrada) em primeiro plano, então ele funciona por um longo tempo, então eu o coloco em bg e logout. Eu quero redirecionar mensagens de erro no arquivo de texto, enquanto o processo em um plano de fundo e eu não estou conectado à máquina. Como posso implementar isso?

UPD : Eu preciso redirecionar a saída enquanto o processo já está em execução, porque inicialmente eu preciso de alguma saída do console.

    
por infm 19.12.2013 / 20:13

3 respostas

1

Você pode iniciar o processo de forma interativa, mas redirecionando as mensagens de erro via

  my_program 2> output.txt

e agora você pode esperar por sua saída, interagir com ela e colocá-la no segundo plano, mantendo o redirecionamento do erro padrão.

    
por 19.12.2013 / 21:57
1

SSH, inicie um processo e depois esqueça? Isso soa como um trabalho para tmux ou tela . Você pode deixar o processo em execução, desanexar do tmux e efetuar logout sem sair.

Você ainda pode redirecionar o erro padrão para um arquivo de texto usando 2> log.txt quando executar o comando e até tail -f do arquivo em outra janela do tmux.

    
por 19.12.2013 / 22:32
0

Você deseja começar com mensagens de erro (sem buffer) no arquivo de texto e, em seguida, pode consultá-las conforme desejar (consulte "tail -f"). Assumindo um shell com controle de tarefa, você pode suspender o trabalho atual com Ctrl-Z e, em seguida, "bg" para colocá-lo em segundo plano.

    
por 19.12.2013 / 20:47