Неожиданное поведение отступов при установке терминала в режим raw — почему это происходит?

Неожиданное поведение отступов при установке терминала в режим raw — почему это происходит?

Исходя из того, что я прочитал, когда терминал находится в режиме raw, символы не обрабатываются драйвером терминала, а отправляются напрямую.

Я установил терминал в режим raw с помощью команды stty rawи заметил, что вывод каждый раз смещается вправо, пока не останется места. Вот что я имею в виду:

введите описание изображения здесь

Почему происходит такое поведение?!

решение1

Один изsttyнастройки (onlcr) рассказываетдрайвер терминаладля преобразованияновая линия(что на самом деле является символом перевода строки ASCII) на возврат каретки плюс перевод строки.

Unix-подобные системы просто пишутновая линиядля завершения строк, позволяя драйверу терминала сделать все правильно (преобразоватьновая линия(возврат каретки плюс перевод строки).

Возврат каретки «идет влево», а перевод строки «идет вниз».

Когда вы переводите терминал в режим raw,новая линиябольше не будет преобразовано в возврат каретки плюс перевод строки. Без возврата каретки вы получите этолестницаэффект.

Связанный контент