텍스트 파일을 사용하다 보면 encoding 이 문제가 되는 경우가 종종 있습니다.

 

이런 경우에는 encoding 을 변경하여 해결 하곤 하는데~

 

notepad++ 와 같은 에디터의 기능을 활용 하거나~ 아니면 iconv 와 같은 명령어를 사용하여 encoding 을 변경하곤 하는데요~

 

iconv 와 같은 명령어를 활용하더라도 현재 텍스트 파일의 encoding 방식을 확인 해야 합니다.

 

encoding을 확인 하기 위해 일일이 에디터에서 파일을 여는 것도 귀찮아서 찾아보니~

 

chardet 라는 python 모듈을 있더군요.

 

https://github.com/chardet/chardet

 

위 주소에서 확인 할 수 있는 바와 같이 아래 타입들을 detect 할 수 있다고 합니다.

 

ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants), Big5, GB2312, EUC-TW, HZ-GB-2312, ISO-2022-CN (Traditional and Simplified Chinese), EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP (Japanese), EUC-KR, ISO-2022-KR (Korean), KOI8-R, MacCyrillic, IBM855, IBM866, ISO-8859-5, windows-1251 (Cyrillic), ISO-8859-5, windows-1251 (Bulgarian), windows-1252 (English), ISO-8859-7, windows-1253 (Greek), ISO-8859-8, windows-1255 (Visual and Logical Hebrew), TIS-620 (Thai)

 

python 모듈이니만큼 설치도 굉장히 간단한데요~

 

다음과 같이 pip 로 설치 할 수 있습니다.

 

pip install chardet

 

설치는 하면 아래 그림과 같이 C:\Python27\Scripts\chardetect.EXE 에 chardetect 실행 파일이 설치가 됩니다.

 

그럼 다음과 같이 명령어를 이용하여 텍스트 파일의 encoding 을 확인 할 수 있습니다.

 

chardetect 파일명1 파일명2 파일명3 …

 


많은 스크립트 언어가 있지만 정규표현식이나 문자열 처리 등에는 정말 Perl 만한 언어가 없는 것 같습니다.

 

조금만 사용할 줄 알아도 생활이 편해 지더군요.

 

저는 Perl을 그리 잘은 못하고 간단한 정규표현식이나 몇 몇 모듈 등만 아는 정도인데~

 

Perl을 사용하면서 제 생활이 정말 많이 편해졌다는 생각을 많이 합니다.

 

컴퓨터를 사용하려면 당연히 프로그램을 실행 시킬 텐데 이런 프로그램 실행을 정말 빠르고 쉽게 할 수 있는 툴로 Launchy 에 대해 아래 포스팅에서 소개한 적이 있습니다. 


2013/09/01 - [유틸] - 편리한 런치 프로그램 Launchy


2014/04/20 - [유틸] - 생산성 향상 어플 Launchy plugin 추가 방법

 

Launchy 의 다양한 기능 중에 저는 Weby 를 많이 사용하곤 하는데 Weby를 사용하다 보니~ 브라우저에서 더 이상 북 마크 기능은 안 쓰게 되더군요.

 

사실 북 마크를 해 놓더라도 그거 찾다가 시간 다 가곤 하는데 weby 를 사용하면서는 이런 불편 함 이 사라졌습니다.

 

그런데 Launchy 의 Weby를 사용하다가도 불편한 점이 생기더군요.

 

저는 Launchy를 이곳 저곳에서 사용하는데~ launchy 의 설정 등을 백업해서 정리를 합니다.

 

가령 집에서 사용하는 launchy의 설정은 launchy.home.ini 이라고 하고~ 회사에서 사용하는 Launchy 의 설정 파일은 launchy.com.ini 로 저장곤 합니다.

 

이곳 저곳에서 분산된 설정들을 한곳에 모으기 위해서는 merge 를 해야 하는데~ 한 두 개 일 때는 쉽지만 항목들이 여러 개가 되면서는 merge 하기가 힘들더군요.

 

그래서 간단하게 launchy.ini 파일들을 merge 하는 Perl 스크립트를 작성해 봤습니다. 아래 붉은 색으로 표시한 부분이 merge 할 파일 들이고 Perl 코드는 ini 파일들과 같은 폴더에서 실행 시켰습니다.

 

본인의 머지 할 파일 명들을 아래 @FILEPATH 부분에 기록해 주면 됩니다.

  

위 코드를 실행 시키면~ Merge.txt, Merge_weby.txt 파일이 생성됩니다. Merge_weby.txt 파일이 weby 정보들에 대한 merge 파일 입니다.

 

복사 해서 launchy.ini 파일의 [weby] 부분에 붙여 넣기 하시면 됩니다.


  1. 김병문 2016.09.19 15:40

    지금은 dll 형식으로 바뀐 것 같습니다. 백업하려면 dll파일만 보관했다가 붙여넣기 하면 되나요?

    • 남성 2016.09.19 15:43 신고

      dll은 라이브러리인데... 그게 설정파일이 아닐겁니다

+ Recent posts