Execute dois comandos de observação simultaneamente

2

Eu quero executar dois executáveis em primeiro plano, digitando uma linha de código ou executando um script de shell. Esses executáveis assistem a um diretório e recompilam algum código durante a saída de seu status para stdout.

Eu quero que o stdout seja apresentado da mesma forma que segue dois arquivos em 'tail' assim:

tail -f foo.txt -f bar.txt

==> foo.txt <==
Something

==> bar.txt <==
Something else

Quando algo muda, imprime o nome do arquivo antes de imprimir a saída. Apenas imprime o nome do arquivo quando precisa indicar que a saída está vindo do outro arquivo.

    
por vaughan 12.06.2012 / 08:41

2 respostas

1

Como os dois executáveis gravam na saída padrão, você pode conseguir apenas tail dos arquivos produzidos pela substituição do processo:

tail -f <( executable_one ) <( executable_two )

(A propósito, é necessário apenas um -f . É uma opção global, não é algo que você precisa especificar para cada arquivo.)

Cada um dos dois executáveis é executado separadamente e sua saída é capturada e redirecionada para um identificador de arquivo que é passado em tail . Na saída, os nomes dos arquivos aparecerão como "/ dev / fd / 63". Infelizmente, eu não sei como usar o nome alternativo (como grep e --label ).

    
por 14.06.2012 / 18:17
0
por 14.06.2012 / 18:04

Tags