Backspace символ странности

Интересно, почему символ возврата в обычные терминалы Linux на самом деле не стирает символы при печати (что обычно работает при вводе).

Это работает как ожидалось:

$ echo -e "abc\b\b\bxyz"
xyz

(\b оценивает возврат, может быть вставлен также какCtrl+V Ctrl+H - отображается как^H (0x08))

но когда после символов возврата остается меньше символов, обнаруживается странное поведение:

$ echo -e "abc\b\b\bx"
xbc

он работает как клавиши со стрелками влево, а не как backspace:

$ echo -e "abc\e[D\e[D\e[Dx"
xbc

Стереть строку назад работает нормально:

$ echo -e "abc\e[1Kx"
x

На самом деле, когда я печатаюCtrl+V возврат на одну позицию в терминале,^? (0x7f) дается вместо^H, этоDel Ascii персонаж, ноCtrl+V Del производит<ESC>[3~, но это другая история ..

Так может кто-нибудь объяснить, почему напечатанный символ возврата на клавишу не стирает символы?

(Моя среда - xterm Linux и некоторые другие эмуляторы терминала,$TERM ==xterm, пыталсяvt100, Linux также)

Ответы на вопрос(1)

Ваш ответ на вопрос