Длинный ответ: вы можете делать все, что поддерживает терминал.Существует много видов терминалов (или «устройств вывода символов»), многие из которых поддерживают движения курсора.(Вы можете увидеть проект Termcap Library , чтобы создать картину того, что делают разные типы терминалов.) Существует команда терминала для перемещения вверх по линии, поэтому, по сути, да, вы должны это сделать.После поиска в базе данных termcap я обнаружил следующее:
$ printf "\n"; printf '\e[A'; echo Foo
Foo
Другими словами, строка \e[A
имеет ненулевой шанс получить вам одну строчку вверх,На некоторых терминалах:)