Bash 쉘에서 이상한 물음표가 보입니다.

Bash 쉘에서 이상한 물음표가 보입니다.

RHEL7 서버에서 뭔가 이상한 점을 발견했습니다. 셸에는 항상 텍스트의 일부를 포함하는 물음표가 반환됩니다. 다음과 같습니다.

rm file.txt
rm: remove regular file ?file.txt??

아니면 이거:

rm 886- rm: cannot remove ?886-?: No such file or directory

이게 정상인가요?

Ubuntu 16.04 데스크톱에서 RHEL7 서버로 SSH를 통해 연결하고 화면을 사용하고 있습니다. 이것이 차이점의 원인이 될 수 있습니까?

답변1

rm터미널에서 지원하지 않는 문자를 표시하려고 합니다. 그건 당신이장소설정이 잘못되었습니다. 특히 LC_CTYPE. 환경 변수는 터미널 에뮬레이터로 설정해야 하며 또는 LC_CTYPE같은 스크립트로 변경하면 안 됩니다 ..profile.bashrc

화면이 실행 중임을 나타냅니다. 한 로케일에서 screen 세션을 시작하고 다른 로케일에 연결하면 화면이 지원되지 않는 문자를 로 변환합니다 ?. 해당 창에서 실행 중인 셸과 같이 이미 실행 중인 응용 프로그램에서는 로케일 설정을 변경할 수 없습니다. 대부분의 응용 프로그램은 로케일 설정을 즉시 변경하는 기능을 지원하지 않습니다. 너~할 수 있다변수를 설정하여 쉘에서 수행하십시오 LC_CTYPE. 터미널에서 예상하는 내용을 보려면 LC_CTYPEscreen 세션에 연결하기 전에 값을 인쇄하세요.

골치 아픈 일을 피하려면 어디에서나 일관된 로케일 설정을 채택하십시오. 요즘에는 UTF-8이 모든 곳의 표준이므로 다른 인코딩은 이전 애플리케이션이나 장치와의 호환성을 위해서만 사용해야 합니다.

관련 정보