명령줄의 Ctrl-P가 예상대로 작동하지 않습니다.

명령줄의 Ctrl-P가 예상대로 작동하지 않습니다.

명령줄에서 Ctrl+p 키 바인딩을 사용하면(기본 emacs 키 바인딩 사용) 가끔 예상대로 작동하여 마지막으로 실행한 명령이 표시됩니다. Ubuntu 18.04에서 bash 쉘을 사용하고 있습니다.

그러나 때때로 결함이 발생합니다. 명령줄에서 이전 줄의 일부를 유지합니다. 이것은 내가 실행하는 다음 명령에 영향을 미치지 않지만 여전히 나를 귀찮게 합니다. 이 문제를 어떻게 해결할 수 있나요?

여기에 이미지 설명을 입력하세요.(이 설명이 별로 의미가 없다는 것을 알고 있으므로 여기에 스크린샷이 있습니다. 마지막 명령(어떤 이유로든 해당 줄)에서 더 이상 백스페이스를 할 수 없습니다 touch file.) 내가 "이것은 다음 명령에 영향을 미치지 않습니다. "언제"라는 명령을 실행합니다. 이것이 의미하는 바입니다. 여기에 이미지 설명을 입력하세요.

편집: 내 PS1에서는 다음과 같이 말합니다.\e[1;32mKR$ \e[m

답변1

$PS1해결책은 명령 프롬프트를 변경하고 \ein 및 로 \[시작하는 항목을 포함하여 값을 변경하는 것 입니다 \]. 이것은에서 온 것입니다또 다른 대답.

$PS1로 설정 했습니다 \e[1;32mKR$ \e[m.

제가 시도한 첫 번째 해결책은 전체 표현식을 이러한 시퀀스로 래핑하는 것이었지만 \[\e[1;32mKR$ \e[m\]작동하지 않았기 때문에 인쇄할 수 없는 각 블록에 대해 하나씩 두 개의 다른 부분으로 나누어야 했습니다. 그래서 일단 이 시퀀스를 추가하면 \[\e[1;32m\]그것만 남습니다.\[\e[m\]

최종 해결책은 입니다 \[\e[1;32m\]KR$ \[\e[m\].

관련 정보