![파일에 특수문자가 많이 들어있습니다. 교체하는 방법?](https://linux55.com/image/189858/%ED%8C%8C%EC%9D%BC%EC%97%90%20%ED%8A%B9%EC%88%98%EB%AC%B8%EC%9E%90%EA%B0%80%20%EB%A7%8E%EC%9D%B4%20%EB%93%A4%EC%96%B4%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%EA%B5%90%EC%B2%B4%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%3F.png)
다음 기록이 포함된 파일이 있습니다.
CENTURY®KETTLEBELLS
COLEMANTT40°BAG
AlphaPro2¾TDLE
Lot™Stretch
M6×30
일반적으로 메모장 파일에 표시되지만 캡처하면 터미널에 다음과 같이 표시됩니다.
CENTURY▒KETTLEBELL
AlphaPro2▒TDLE
Lot▒Stretch
M6▒30
이 문제를 해결할 방법이 있나요? 두 파일을 이 값으로 비교해야 합니다. █ 모든 것이 차이점을 나타내기 때문입니다. 도와주세요
편집하다:
파일 인코딩은 다음과 같습니다.
$ file FULL_ITM.txt
FULL_ITM].txt: ascii text
$
다음은 locale 명령의 출력입니다.
$ locale
LANG=en_US
LC_COLLATE="en_US"
LC_CTYPE="en_US"
LC_MONETARY="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_MESSAGES="en_US"
LC_ALL=
결과는 다음과 같습니다.
LC_ALL=C od -c FULL_ITM.txt
0000000 C E N T U R Y 302 256 K E T T L E B
0000020 E L L S \n C O L E M A N T T 4 0
0000040 302 260 B A G \n A l p h a P r o 2 302
0000060 276 T D L E \n L o t 342 204 242 S t r e
0000100 t c h \n M 6 303 227 3 0 \n
0000113
답변1
ISO-8859 로케일을 사용하고 있으며 파일은 UTF-8입니다.
내 제안은 시스템에 적합한 UTF-8 로케일을 생성하고 현재 로케일 대신 이를 (영구적으로) 사용하는 것입니다.
안타깝게도 운영 체제나 Linux 배포판을 알려주지 않았으므로 Debian 유형 시스템에서 로케일을 구성하는 방법은 다음과 같습니다.
dpkg-reconfigure locales
루트로서 en_US
UTF-8이 포함된 버전을 선택하십시오. 이것이 귀하의 시스템이라면 기본값으로 설정하십시오