Como tirar / liberar o controle da saída?

0

Eu tenho dois processos paralelos executando o shell script, cada um imprimindo para stdout de tempos em tempos usando echo. Mas às vezes a saída pode se misturar. Existe uma maneira de usar exclusivamente o stdout e liberá-lo?

    
por user276851 08.08.2014 / 23:58

1 resposta

0

Eu não entendo exatamente a sua intenção, mas suponho que você tenha dois processos enviando a saída deles para o stdout e deseje monitorar apenas um deles por vez.

Minha sugestão seria que cada processo fosse gravado em seu próprio arquivo em vez de stdout. Se você não quiser reescrever seu script, você pode ter todas as saídas para o processo redirecionado usando > apenas para saída padrão ou & amp; > para todas as saídas, incluindo stderr.

Você pode executar seus processos usando:

$./proc1 &> proc1.out
$./proc2 &> proc2.out

Agora, se você quiser monitorar a saída de um dos processos, use o comando tail com a opção 'follow':

$ tail -f proc1.out

Se você quiser ver a saída de ambos os processos simultaneamente no stdout, use:

$ tail -f proc1.out -f proc2.out
    
por krallus 09.08.2014 / 03:08