Вы можете добавить ESC [K (от конца до конца строки) к ESC [A (вверх на одну строку) и напечатать текст новой строки
пример использования Python:
import random, time
for _ in range(100):
print('\x1b[A\x1b[Kthis will print each line cleanly: %d' %(random.randint(0, 100000)))
time.sleep(0.1)
, если вы действительно хотите быть в курсе событий, используйте ESC7 (сохранить курсор) и ESC8 (восстановить курсор)
затем вы пишете свою строку и в конце ее используете ESC7. в начале оператора печати вы используете ESC8. обратите внимание, если вы не отключите автоматические переводы строк, это будет , а не работать в нижней части вашего tty. он будет работать на всех строках , но внизу.
import random, time
print('this will print each dot cleanly: \x1b7')
for _ in range(10):
print('\x1b8.\x1b7')
print('print more foo: %d' %_)
time.sleep(0.1)
для сценариев оболочки (bash) вы должны использовать printf "..." без \ n или echo -n