Para alguns aplicativos que imprimem saída na mesma linha (retorno de carro), como wget
ou qualquer coisa que tenha uma barra de progresso sobrescrevendo o progresso anterior, quando eu redimensiono a janela do terminal ou altero a posição na tela, a saída é iniciada para imprimir em uma nova linha a cada segundo e rola para baixo continuamente até o processo completar 100% ou a barra de progresso atingir 100%.
Por exemplo:
Epoch 0 [Train | | 1/20000 batches, 1.86 co
Epoch 0 [Train | | 2/20000 batches, 4.65 co
Epoch 0 [Train | | 3/20000 batches, 3.10 co
Epoch 0 [Train | | 4/20000 batches, 5.32 co
O que eu quero é uma entrada prioritária como esta:
Epoch 0 [Train | | 4/20000 batches, 5.32 co
Se eu não redimensionar, a saída substitui a linha atual e não rola para baixo. Eu gostaria de poder redimensionar o meu terminal, mantendo essa saída na mesma linha (como era pretendido).
Este problema não está presente com wget
sendo executado diretamente no terminal, mas, como eu recordo ao chamá-lo via programa C ou Python, um re-scroll irá disparar isso e a saída será continuamente impressa em um novo linha.
Isso é problemático quando eu quero manter algum resultado anterior visível na tela para fins de apresentação, por exemplo. Eu tentei redimensionar meu terminal e posicioná-lo antes executando meu script Python, e o problema ainda ocorre.
Existe uma maneira de evitar que isso aconteça?