입력할 때 터미널이 반환되지 않습니다.

입력할 때 터미널이 반환되지 않습니다.

이게 이상하다는 건 알지만 갑자기 오늘 긴 명령을 터미널에 복사했고 예상대로 단어 줄 바꿈 대신 같은 줄을 덮어쓰기 시작했습니다. 명령은 제대로 실행되었지만 읽을 수 없게 되었습니다. 일반적으로 이런 일이 발생하면 Enter를 몇 번만 누르면 문제가 해결되지만 이 경우는 그렇지 않습니다. 터미널을 다시 시작하고 재부팅했는데도 같은 이야기입니다.

색상 등으로 프롬프트를 사용자 정의하기 위해 /etc/bash.bashrc 파일을 편집했다는 사실과 관련이 있다고 생각할 수도 있습니다. 하지만 며칠 전에 그렇게 했는데 편집한 후에는 이런 일이 발생하지 않았습니다. 만일을 대비해 백업을 저장했습니다. 누군가 그럴 수도 있다고 생각한다면 두 파일의 차이점 결과를 포함했습니다.

$ diff /etc/bash.bashrc /etc/bash.bashrc.bak 
19c19
< PS1='\e[1;32m\u: \e[m\w\n\e[1;33m\$\e[m '
---
> PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

어떤 아이디어라도 도움이 됩니다. 이것은 정말 이상한 문제입니다.

답변1

이것을 사용해보십시오 PS1:

PS1='\[\e[1;32m\]\u: \[\e[m\]\w\n\[\e[1;33m\]\$\[\e[m\] '

차이점은 이스케이프 시퀀스( \e..)가 에 래핑되어 \[ .. \]Bash가 커서를 더 잘 추적하는 데 도움이 된다는 것입니다.

관련 정보