Server Management/LInux Server

리눅스에서 text 인코딩 한꺼번에 바꾸기

BAGE 2009. 5. 11. 11:29


필자는 최근까지 인코딩으로 EUC-KR 을 절대적으로 고수해왔다.
하지만 최근 ajax에 빠지면서 UTF-8 으로 바꿔야 할 필요성을 절실히 느껴서 서버 셋팅을 몽땅 UTF-8 으로 갈아 엎게 되었다.

하지만 문제는....

기존에 개발했던 스크립트는 모두 EUC-KR 로 되어 있어서 한글이 모두 깨지고 주석 달아 놓은것도 알아볼 수 없는 상황이 되었다.

약간의 구글링 끝에 좋은 해결 방법을 발견해서 소개한다.

GNU 에서 배포하는 recode 라는 작은 프로그램이 있다.
(http://www.gnu.org/software/recode/recode.html)

필자는 우분투 리눅스를 사용하고 있는데 설치는 3초도 안걸렸다.
apt-get install recode :)

사용방법은 매우 간단하다.
쉘에서 다음과 같이 입력하면된다.

recode -v <소스인코딩>...<출력인코딩> <파일명>

가장 마음에 드는 점은 와일드카드 (*) 를 지원해서 파일들을 한꺼번에 인코딩 변환이 가능하다.

recode -v EUC-KR...UTF-8 *.php

recode -l 을 치면 지원하는 모든 charset 을 볼 수 있다. :)

Happy Linuxing^^