Esse tipo de coisa é geralmente o resultado de um programa que manipula o terminal diretamente e move o cursor por conta própria. Por exemplo, é isso que editores como o VI fazem - se você tentar rolar o shell de volta após uma sessão do vi, você só verá o texto na última página da saída do vi, e não qualquer outra coisa que você tenha paginado.
Formas de lidar com isso:
- Use uma ferramenta como a tela (1) e ative o log (
ctrl-A H
). Então você pode rever o log mais tarde. Isso pode mostrar mais informações úteis.
- Tente usar o tee (1) para capturar a saída enquanto ela passa com
command | tee output.txt
- Determine como desabilitar qualquer modo de saída sofisticado no programa que você está executando e forçá-lo a emitir texto simples.
Para esse último, há algumas coisas que você pode tentar. Primeiro, olhe os argumentos para o comando e veja se há algo como -nostty
ou qualquer coisa falando sobre dumb terminals
.
Você também pode tentar forçar o programa a pensar que está em um terminal idiota assim:
TERM=dumb command
(assumindo o bash shell) e isso pode fazer o programa pensar que está rodando em um terminal burro e fazer com que ele retorne para a saída de texto direto.
Você também pode tentar alimentar o programa com alguma entrada e isso pode ativar o modo de saída de texto simples:
echo blarg | command
ou talvez
echo blargh | command -
se o programa tiver -
como uma indicação para ler a partir de stdin.
De qualquer forma, experimente essas ideias e você deve encontrar uma maneira de obter saída de texto direto das ferramentas que está usando.