Terminal - o redirecionamento da saída para o arquivo é encurtado

2

Estou usando o comando:

./cpp-generator > ~/log.log

Mas quando abro o log.log, o arquivo é encurtado. Termina no meio de uma palavra. Mas se eu corro só:

./cpp-generator 

no terminal, o resultado é uma saída completa e completa.

    
por Dusan Plavak 04.08.2015 / 11:14

1 resposta

1

Ok, assim como @ StéphaneChazelas disse que a causa possível é que ./cpp-generator é morto O terminal tem um buffer baseado em linha ao invés de um buffer de blocos no ./cpp-generator, então é por isso que o terminal imprimirá toda a saída.

Eu dei ao ./cpp-generator tempo suficiente para imprimir a mensagem, mas como ele é executado em loop eu sempre termino com ctrl + c - portanto eu o matei e buffers baseados em bloco não tem chance de gravar no arquivo ...

a solução de trabalho é executada ./cpp-generator da seguinte forma:

stdbuf -o0 cpp-generator > log.log

Obrigado @ StéphaneChazelas

    
por 05.08.2015 / 09:35