강좌 & 팁
글 수 2,412
2015.04.22 11:39:26 (*.134.169.166)
45317
Windows에서 만들어 저장된 텍스트(.txt)파일들은 문자체계가 지금의 ubuntu에서의
문자체계인 unicode와는 다른 KSC-5601의 계보를 따르고 있다.
이들 텍스트문서를 Linux에서와 같은 문자체계로 변환하기 위해서 iconv라는 명령을
사용할 수 있다. 사용법을 보면 다음과 같다.
'-f'의 f는 'from'을 의미하는 것이고, '-t'의 t는 'to'를 의미한다. 이들 옵션에 사용할 수 있는 값들은 '-l'옵션을 통해 볼 수 있다.
iconv는 기본적으로 입력파일을 stdin에서 받고 출력을 stdout으로 내기 때문에
리디렉션('>','<')을 사용한다. 여기 utf8파일인 utf8_a.txt와 cp949_a.txt파일 헥사덤프하기 위해 od명령을 사용하였다.
cp949는 windows의 텍스트 문자체계이다.
cp949_a.txt를 utf8로 변환하여 a1.txt에 저장하고 다시 거꾸로 a1.txt를 cp949로
변환하여 a2.txt에 저장한다. gedit로 a2.txt를 보면 cp949파일도 볼 수 있지만
이 파일을 cat으로 보면 내용이 깨져서 나오는 것을 볼 수 있다.
다시 a2.txt를 변환하여 utf8파일인 a3.txt를 만든다.
내용을 cat으로 봤을 때 온전하게 보이는 것을 알 수 있다.