adsense_in_article_test


iconv - 리눅스에서 캐럭터 인코딩 변환하기 리눅스

리눅스에서 텍스트 파일의 인코딩(encoding) 방식을 변환하는 방법이다. 예를 들어 UTF-16 인코딩을 UTF-8로 변환한다던가 하는 경우인데, iconv를 이용하면 된다.

아래의 예시를 보자. UTF-16 방식으로 인코딩되어 저장된 my_file.txt 파일을 UTF-8 방식으로 변경하여 my_file.utf8.txt 파일에 저장하는 경우다.

# my_file.txt(UTF-16 인코딩) -> my_file.utf8.txt(UTF-8 인코딩)
iconv -f UTF-16 -t UTF-8 -o my_file.utf8.txt my_file.txt

-f 옵션으로 기존 인코딩을 지정하고 -t 옵션으로 원하는 인코딩을 지정한다. from/to라고 이해하면 쉬울 듯. 결과를 저장할 파일은 -o 옵션으로 지정.

이 기능은 윈도우에서 한글로 작성한 텍스트 파일을 리눅스에서 봐야 할 때 특히 요긴하다. 한글 윈도우의 캐럭터 인코딩은 통상 EUC-KR, 리눅스에서는 UTF-8을 사용하다 보니 윈도우에서 가져온 텍스트 파일을 리눅스에서 cat 명령으로 보면 내용 확인이 안 되는데, 이럴 때 iconv를 이용해서 변환하면 깔끔하다.

# win_file.txt(EUC-KR) -> win_file.utf8.txt
iconv -f EUC-KR -t UTF-8 -o win_file.utf8.txt win_file.txt

# 변환된 내용 확인
cat win_file.utf8.txt

iconv에서 지원하는 인코딩 방식 목록을 보고 싶으면 -l 옵션으로 가능하다. UTF-8, UTF-16, EUC-KR 등을 포함해서 매우 다양한 종류의 인코딩을 지원한다.

# 지원하는 인코딩 목록 출력
iconv -l



핑백

덧글

  • 슝슝잉여 2020/03/26 03:58 # 답글

    반달가면님. 파이어폭스에서 다운로드 받은 파일명이 깨진 경우 이 파일명을 터미널 상에서 수정이 가능할까요? 다운로드 받을 때 다른 이름으로 저장하기가 보편적이지만, 혹시라도 받은 이후에 터미널에서 특정한 명령어로 복구가 가능한지 싶어서요.
  • 반달가면 2020/03/26 10:22 #

    예를 들어 파일명이 "abcd[제대로 안보임]def.txt"일 경우 아래와 같이 abcd_def.txt로 바꿀 수 있을 듯합니다.

    ls | grep "abcd" | grep "def.txt" | xargs -i mv {} abcd_def.txt

    xargs에 대한 내용은 아래의 링크를 참고하시기 바랍니다.

    http://bahndal.egloos.com/577448
  • 슝슝잉여 2020/03/29 16:02 #

    감사합니다 ^^
댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.



통계 위젯 (화이트)

117516
2895
2275575

2019 대표이글루_IT

B-Side