![ANSI 이스케이프 코드를 사용하여 터미널 커서의 문자를 가져올 수 있습니까?](https://linux55.com/image/32333/ANSI%20%EC%9D%B4%EC%8A%A4%EC%BC%80%EC%9D%B4%ED%94%84%20%EC%BD%94%EB%93%9C%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%84%B0%EB%AF%B8%EB%84%90%20%EC%BB%A4%EC%84%9C%EC%9D%98%20%EB%AC%B8%EC%9E%90%EB%A5%BC%20%EA%B0%80%EC%A0%B8%EC%98%AC%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
이스케이프 코드를 사용하여 커서를 이동하고 커서에 인쇄할 수도 있다는 것을 알고 있습니다. 커서 아래로 문자를 끌어오는 것이 가능한지 궁금합니다.
해당 코드를 찾아보았지만 실패했습니다. 그래서 이것이 가능할 것 같지는 않지만 혹시 제가 찾지 못한 방법이 있는지 여쭤보고 싶었습니다.
답변1
curses
라이브러리나 이에 상응하는 것을 사용하도록 터미널 에뮬레이터를 수정하지 않는 한 이는 불가능합니다 .
답변2
이스케이프 시퀀스를 사용 DECRQCRA
하면 직사각형 영역의 체크섬을 쿼리할 수 있습니다.
체크섬은 기본적으로 거기에 있는 문자 코드의 합계입니다. 1×1 직사각형 영역을 선택하면... bamm, 그것이 문자 코드입니다.
예를 들어 테스트 스위트에서는 이 기능을 사용합니다 esctest
.
현재로서는 모든 터미널이 이를 지원하는 것은 아닙니다. 어떤 사람들은 게으름 때문에 이 기능을 구현하지 않습니다(아무도 실제로 이 기능이 필요하지 않습니다). 일부 사람들은 개인 정보 보호/보안상의 이유로 의도적으로 이를 구현하지 않습니다( // ssh
손상된 원격 시스템에 연결하면 화면을 보고 이전 상태를 볼 수 있습니다). 일부는 실행할 수 있도록 일종의 개발자 플래그를 적용하지만 기본적으로 개인 정보 보호/보안 취약점을 열지 않습니다.telnet
netcat
esctest