System/OS
2014.01.09 22:15
[linux] iconv를 이용하여 euc-kr 문서를 utf-8로 대량으로 변환하기
조회 수 12541 댓글 0
첨부 '1' |
---|
아래 iconv 명령을 이용해서 euc-kr로 작성된 문서를 변환할 수 있다.
euc-kr 형식으로 작성된 [target file]을 utf-8 형식으로 변환하여 [dest file]에 저장하는 명령이다.
$ iconv -f euc-kr -t utf-8 [target file] [dest file]
하지만, 파일이 많을 때는 어떻게 해야 할까?
아래와 같은 명령어를 쉘스크립트(Shell Script)로 만들어서 해결할 수 있다.
find 명령어로 찾은 *.php 파일들을 euc-kr에서 utf-8로 변환하는 쉘 스크렙트
#!/bin/bash find . -name "*.php" | while read fn; do cp ${fn} ${fn}.bak iconv -f euc-kr -t utf-8 -c ${fn}.bak > ${fn} rm ${fn}.bak done
확장자가 php가 아니라면, 위의 내용 중 *.php를 원하는 확장자로 바꾸면 된다.
(ex. java, text 등)
이 부분을 argument로 바꿔서 만들면 더 편리할 듯..
그건 나중에..
한가지 더.. 아래는 실제로 사용하고 있는 샘플..
FROM=euc-kr TO=utf-8 ICONV="iconv -c -f $FROM -t $TO " find ./ -type f -name "*.htm*" | while read fn; do cp ${fn} ${fn}.bak echo $ICONV ${fn} $ICONV < ${fn}.bak > ${fn} rm ${fn}.bak done
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
851 | Database | [sql] 쿼리로 문자열 검색해서 일괄 치환하기 | hooni | 2014.02.13 | 10358 |
850 | Develop | [php] XE 관리자 IP대역 설정 오류 해결법 | hooni | 2014.02.10 | 10939 |
849 | Develop | [c] 64bit 머신에서 inet_ntoa() 사용시 Segment fault 대처 방법법 | hooni | 2014.02.08 | 14476 |
848 | Develop | [ios] NSString 간단한 정규식 사용법 | hooni | 2014.01.28 | 18361 |
847 | Develop | [ios] iOS 6.0 이상 회전 하기 (이전 버전과 비교 변경 부분) | hooni | 2014.01.27 | 34465 |
846 | Develop | [ios] 네트워크 인디케이터(NetworkActivityIndicator) 작동 | hooni | 2014.01.24 | 12577 |
845 | Develop | [js] 주소표시줄 URL 읽어오기 (변경까지) | hooni | 2014.01.21 | 1 |
844 | System/OS | [linux] CentOS 6.x Cati 설치 (yum) | hooni | 2014.01.17 | 49016 |
843 | Develop | [ios] UIWebView에서 NSURLRequest에 Cookie 실어 보내기 | hooni | 2014.01.16 | 15026 |
842 | Develop | [ios] UIWebView 쿠키 유지 | hooni | 2014.01.16 | 11817 |
841 | Develop | [php] substr() 한글 자를 때 깨짐 방지 | hooni | 2014.01.09 | 20564 |
» | System/OS | [linux] iconv를 이용하여 euc-kr 문서를 utf-8로 대량으로 변환하기 | hooni | 2014.01.09 | 12541 |