답변1
스크린샷은 컴퓨터에서 터미널로 전송된 라인 피드가 터미널 드라이버에 의해 자동으로 캐리지 리턴/라인 피드로 변환되지 않는 소위 "계단"을 보여줍니다.
원래 모드를 성공적으로 복원하지 않고 터미널 모드를 임시로 수정하는 프로그램을 실행한 후에 이 현상이 나타납니다. 당신은 할 수 있습니다안 돼요바이너리 파일을 화면에 표시한 결과입니다.
일부 셸에서 이 동작을 생성할 수 있습니다(다른 셸에서는 tcsh
모든 명령 후에 터미널 모드를 재설정함). 다음은 사용 예입니다 dash
.
$ stty -a
speed 38400 baud; rows 40; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
$ stty -onlcr
$ stty -a
speed 38400 baud; rows 40; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl -onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
$
제안된 대로 이 reset
명령은 터미널 모드를 재설정하지만 터미널 자체의 기능도 재설정합니다. 당신은 또한 사용할 수 있습니다
stty sane
아니면 좀 더 구체적으로
stty onlcr
그러나 reset
타이핑은 최소화됩니다.
추가 자료: