그런 다음 man less
(선택적으로 h
"몇 가지 명령 요약"을 클릭) 텍스트를 표시하기 man
위한 것이므로 텍스트를 파일에 저장을 less
클릭했습니다 .s
emacs나 vi에서 파일을 열면 원치 않는 Ctrl+H가 나타나고 일부 문자가 불필요하게 반복됩니다. 왜 그런 겁니까? "적은 명령 요약"을 올바르게 저장하는 방법은 무엇입니까?
man less
출력을 파일로 리디렉션하는 데 문제가 없는 이유는 무엇입니까 ?
감사해요.
답변1
이는 1970년대 텔레타이프 기계(ttys!)로 거슬러 올라갑니다.
X<backspace>X
( ASCII BS 문자로) 텔레타이프 기계에 전송하여 ^H
X를 쓰고 문자를 반환한 후 자체 위에 X를 다시 쓰게 합니다. 처럼 보이도록 두 번 썼습니다.용감한.
마찬가지로 밑줄의 경우 다음 과 같이 쓸 수 _<backspace>X
있습니다 .X
밑줄 X̲
.
roff
, 사용된 조판 시스템은 man
1970년대에 Unix용으로 작성된 최초의 시스템 중 하나였습니다. 왜냐하면 이것이 Unix 작성자가 돈을 버는 방식이었기 때문입니다.
man
텔레타이프에 then을 사용하면 이러한 시퀀스를 굵게 표시하고 밑줄을 그어 보낼 수 있습니다.
텔레타이프라이터는 곧 음극선관 터미널로 대체되었습니다. 거기에서 BS 문자는 커서를 뒤로 이동하고 문자는 아래 문자를 덮어씁니다.
그러니 보내 X<backspace>X
거나 _<backspace>X
그냥 보여주세요 X
. CRT는 또한 화면 공간이 제한되어 있습니다(텔레타이프의 종이와 달리).휴대용 소형 무선 호출기출생과 같습니다 more
.
X<BS>X
호출기는 이러한 시퀀스를 이해하고 해당 이스케이프 시퀀스를 사용하여 터미널에 굵은 글씨나 밑줄을 표시하도록 지시하도록 향상되었습니다 .
more
, less
, 를 포함한 오늘날의 호출기는 most
여전히 w3m
이러한 시퀀스를 이해합니다.
man
출력이 호출기로 전송될 때 굵게 또는 밑줄을 표시하는 데 여전히 사용됩니다.
man
(적어도 일부 구현에서) 출력이 터미널로 전송되지 않는 것을 감지 하면 호출기를 호출하지 않고 이러한 시퀀스를 사용하지 않으므로 파일로 리디렉션할 때 해당 시퀀스가 표시되지 않습니다.
이러한 시퀀스를 삭제하려면 이 col -b
명령을 사용하면 됩니다.