Tente isto:
pocketsphinx_continuous -samprate 48000 -nfft 2048 -hmm \
/usr/local/share/pocketsphinx/model/en-us/en-us -lm 9745.lm -dict 9745.dic \
-inmic yes 2>&1 | tee ./full-output.log | grep -v --line-buffered '^INFO:'
Isso registrará everything em ./full-output.log
, mas ocultará qualquer saída do console que comece com INFO:
. 2>&1
redireciona o erro padrão para a saída padrão para que toda a saída seja forçada pela série de canais, em vez de apenas pela saída padrão.
Se você quisesse ocultar outras linhas que não contêm INFO:
, você poderia usar |
na sintaxe extended- grep
:
egrep -v --line-buffered '^INFO:|^ERROR:'
A opção --line-buffered
impedirá que grep
espere até que a saída de pocketsphinx_continuous
esteja completamente concluída.
Editar
Também é possível que pocketsphinx_continuous
já esteja colocando tudo o que você deseja na Saída Padrão e em tudo que você não deseja no Erro Padrão. Então, você pode tentar apenas fazer:
pocketsphinx_continuous -samprate 48000 -nfft 2048 -hmm \
/usr/local/share/pocketsphinx/model/en-us/en-us -lm 9745.lm -dict 9745.dic \
-inmic yes 2>./unwanted-stuff.log | tee ./words.log
Isso registraria tudo que sai no Erro Padrão para ./unwanted-stuff.log
e tudo na Saída Padrão para ./words.log
.