// 문제상황
^[[A, ^[[B, ^[[C, ^[[D 이런게 방향키를 누르면 나오고
탭을 하면 큼직한 공백이 생기는 문제가 발생했다.
// 해결법
아주 간단하다.
bash
라고 치고 앤터를 치면 끝난다.
진짜다.
// 원리
우리가 터미널이라고 하는 입력창은 tty의 일종으로
입력이 들어가면 그에대한 출력값을 보여주는 장치다.
그리고 입력과 출력에 대한 프로토콜이라고 해야하나 아무튼
해석을 위한 약속이 정해져 있는데 이 약속을 shell이라고 하고
shell 이 이해할 수 있는 스크립트를 shell script 라고 한다.
그러니까 우리는 shell이 해석할 수 있는 방식의 입력을 전송해야된다.
그런데 이 shell에는 여러가지 버전이 있고 그중에 하나가 바로 bash 이다.
그런데 일부 리눅스 혹은 도커이미지에서는
이 default shell을 dash 로 지정해 두는 경우가 있다.
^[[A 혹은 긴 공백과 같은 것은 우리가 키보드를 눌렀을때 전달되는 바로 그 값이고
이걸 dash가 해석하지 못했기 때문에 그냥 그대로 출력으로 보여주는 것이다.
하지만 bash에서는 이 커멘드를 해석하고
우리가 원하는 기능을 제공해 줄 수 있기 때문에
날 것 이 아니라 원하는 방식의 output을 줄 수 있게 된다.
따라서 dash가 실행된 터미널에서 bash 를 실행해 주면 해결되는 문제다.
// 참고
https://raspberrypi.stackexchange.com/questions/40166/what-does-a-mean-in-the-terminal
https://storycompiler.tistory.com/101
'삽질 > Jupyter' 카테고리의 다른 글
[Jupyter 삽질] 자동완성, 탭tab 키가 안될때 해결방법 (0) | 2021.05.15 |
---|
댓글