터미널을 원시 모드로 설정할 때 예기치 않은 들여쓰기 동작이 발생합니다. 왜 이런 일이 발생합니까?

터미널을 원시 모드로 설정할 때 예기치 않은 들여쓰기 동작이 발생합니다. 왜 이런 일이 발생합니까?

내가 읽은 내용에 따르면 터미널이 원시 모드에 있을 때 문자는 터미널 드라이버에 의해 처리되지 않고 곧바로 전송됩니다.

명령을 사용하여 터미널을 원시 모드로 설정했는데 stty raw더 이상 공간이 없을 때까지 출력이 매번 오른쪽으로 들여쓰기되는 것을 확인했습니다. 이것이 내가 의미하는 바입니다:

여기에 이미지 설명을 입력하세요

왜 이런 행동이 일어나는 걸까요?!

답변1

중 하나stty설정(onlcr)에게 말한다터미널 드라이버변환하다개행(실제로는 ASCII 줄 바꿈)을 캐리지 리턴과 줄 바꿈으로 변환합니다.

유닉스 계열 시스템은 단지개행줄을 끝내려면 터미널 드라이버가 올바른 일을 하도록 해야 합니다(변환개행캐리지 리턴과 줄 바꿈).

캐리지 리턴은 "왼쪽으로 이동"하고 줄 바꿈은 "아래로 이동"합니다.

터미널을 원시 모드로 설정하면개행더 이상 캐리지 리턴과 줄 바꿈으로 변환되지 않습니다. 캐리지 리턴이 부족하면 알 수 있습니다.계단효과.

관련 정보