터미널 문자열이 깨져서 나타나는 경우

문자열이 올바르게 표시되지 않고 깨져 보이는 경우

Non-ASCII 문자열이 아래와 같이 깨져서 보일 때가 있습니다:

비정상적인 경우 :

정상적인 경우 :


이 문제는 언어 설정의 차이로 인해 발생하는 것입니다.

$LANG 시스템 환경 변수

이 문제를 수정하기 위해서는터미널에서 어떤 언어와 언어 인코딩을 사용하는지에 대해서 확인해 볼 필요가 있습니다.

test@uby:~$ echo $LANG (또는 env | grep $LANG)
ko_KR.UTF-8
test@uby:~$


위 명령어의 출력 결과는 해당 터미널에서 한국어 언어에서 UTF-8 인코딩을 사용하는 것을 알 수 있습니다.

만약 이 언어 인코딩이 터미널 에뮬레이터의 언어 인코딩과 다를 경우, 위와 같이 문자열 깨짐 현상이 발생할 수 있습니다.


Xshell의 인코딩 설정

인코딩 언어는 세션 파일에 의해 설정됩니다. '세션 파일 등록 정보 - 터미널 - 변환'에서 인코딩 설정을 변경할 수 있습니다.

그러나 이 설정은 세션이 시작된 이후에도 변경 될 수 있습니다. 따라서 깨진 문자가 표시되면 현재 인코딩 설정을 확인한 후 즉시 변경하면 됩니다.


터미널과 Xshell간의 인코딩 일치시키기

Unix 및 Linux의 인코딩은 UTF-8 또는 Non-UTF-8로 구성되어 있습니다.

UTF-8은 모든 언어에 공통적이며 utf8과 UTF-8은 Alias로서 동일하게 사용됩니다.


그러나 Non-UTF-8 인코딩은 약간 다릅니다.

시스템에서 EUC (Extend Unix Codes), ISO8859 시리즈 또는 BIG5, GB 등의 다양한 중국어 인코딩과 같은 Non-UTF-8을 사용하는 경우 먼저 Xshell의 인코딩기본 언어로 설정하고 해당 언어의 다른 인코딩으로 변경해보세요.

올바르게 작동하는 인코딩을 찾으려면 여러 인코딩을 선택해보아야 할 수 있습니다.