Как убрать две строки из вывода терминала - PullRequest
3 голосов
/ 14 октября 2010

Учитывая, что в терминале были распечатаны две строки, возможно ли удалить их обе, чтобы они могли быть заменены двумя новыми строками?

Я знаю, что вы можете использовать \ r для замены 1 строки(ну, чтобы переместить курсор в начало строки), но есть ли способ сделать это для строки выше?

В качестве примера я запускаю программу для вычисления собственных функцийУравнение Шредингера и я хотим следить за тем, как меняются мои переменные во время его работы, поэтому я хотел бы получить такой результат:их можно легко прочитать, и они будут обновляться на каждой итерации функции соответствия программы.

Ответы [ 2 ]

5 голосов
/ 13 июля 2011

Вы также можете использовать $(tput cuu 2) вместо $(tput cuu1)$(tput cuu1)

- Эстир

5 голосов
/ 14 октября 2010

Возможность терминала cuu1 позволяет вам идти наверх.Передайте его в tput, чтобы прочитать последовательность символов из базы данных terminfo / termcap, а затем echo дважды.

echo -e '123\nabc\n'"$(tput cuu1)$(tput cuu1)"'*\n*'
...