PS1의 유니코드 문자로 인해 줄 바꿈이 이상하게 작동합니다(중복이 아님).

PS1의 유니코드 문자로 인해 줄 바꿈이 이상하게 작동합니다(중복이 아님).

에 유니코드 문자 Δ를 넣고 싶은데 PS1이렇게 하면 긴 명령어를 입력하면 터미널이 줄 바꿈을 하지 않고 현재 줄을 덮어쓰게 됩니다!

유니코드 문자를 제거하면 문제가 발생하지 않으며 모든 것을 이스케이프했다고 확신합니다.

export PS1="Δ "

터미널이 현재 줄을 덮어씁니다

어떻게 해결할 수 있나요?

학기. 정보:

$BASH_VERSION => 5.0.16(1)-release
        $TERM => xterm-256color
! stty
speed 38400 baud; line = 0;
-brkint -imaxbel iutf8

PS 솔루션Bash 프롬프트가 예상대로 래핑되지 않습니다.유니코드 문자를 무시하면 잘못된 문자 수가 발생할 수도 있으므로 이상한 동작이 발생할 수도 있습니다.

답변1

@mosvy가 댓글에서 말했듯이 문제는 locale설정입니다!

C.UTF-8내 로케일이 존재하지 않는 로케일로 설정되어 있어서 제 경우에는 (Get Locale List 사용 ) 실제로 존재하는 로케일로 변경했습니다 locale -a.

export LC_ALL="C.UTF-8"

관련 정보