윈도우에서 텍스트 문서를 만들게 되면 기본 파일 포맷을 ISO-8859 형식으로

 만들어져서 리눅스에서 한글을 읽을 수 없어 깨지게 됩니다.


 많이 보셨겠지만 ^M 그리고 깨어진 한글은 아무리 보려해도 잘 보이질 않죠

 이러한 포맷을 UTF-8 로 바꾸어 깔끔하게 읽을 수 있게 해줍니다.


 방법은 dos2unix 포맷으로 변환후 iconv 을 이용해서 문자셋을 바꾸는 것입니다.

 아주 간단한 방법인데 이걸 매번 쓰기는 진짜 귀찮죠?

 그래서 쉘로 간단히 만들어서 사용하기로 했습니다.


 아래는 쉘의 내용입니다. 


 #!/bin/bash

# convert ISO-8859 to UTF-8


if [ -z "$1" ]; then

echo "Usage : $0 [input file]"

echo "        $0 [input file] [output-file]"

echo "        input-file  : Must ISO-8859 file type"

echo "        output-file : default input file name"

exit

fi


outfile=$2


filetype=$(file $1 | grep ISO-8859)

if [ -z "$filetype" ]; then

echo "$1 is not ISO-8859 type"

exit

fi


if [ -z "$2" ]; then

outfile=$1

fi


echo "================================"

echo "input file  : $1"

echo "output file : $1"

echo "================================"

echo ""


dos2unix $1


iconv -f EUC-KR -t UTF-8 $1 -o $outfile


echo "done..."



위의 내용을 복사하셔서 쉘 파일로 만들어 /usr/bin 등에 복사해 넣고 사용하시면 됩니다.

사용법은???

아래와 같이 간단히 사용하면 됩니다.

boggle70@boggle70-fa:~/Downloads$ file 3rd_conf.txt
3rd_conf.txt: ISO-8859 text

boggle70@boggle70-fa:~/Downloads$ chg_iso_to_utf.sh 3rd_conf.txt
================================
input file  : 3rd_conf.txt
output file : 3rd_conf.txt
================================

dos2unix: converting file 3rd_conf.txt to Unix format ...
done...

boggle70@boggle70-fa:~/Downloads$ file 3rd_conf.txt
3rd_conf.txt: UTF-8 Unicode text

보시는 것처럼... 한글이 들어있어 깨지던 ISO-8859 파일이
깔끔하게 UTF-8 포맷으로 바뀌어 읽기고 편집도 가능하게 되었습니다.