대용량 텍스트 파일 윈도우에서 열기

Posted by Everyharu
2016. 12. 12. 14:22 IT/Etc

대용량 텍스트파일(2기가 이상)의 파일을 메모장 또는 Editplus, Notepad++, 울트라 에디트 등으로 열어보려다 실패한 경험 한번쯤 있을련지 모르겠다.

필자도 여러번 경험했고 대용량 로그들을 분석하기 위해 매번 리눅스만 이용하기에도 불편하다.

해당 라인만 바로바로 읽어서 리턴해주는 LTFviewer 라는것도 있기는 하다.

설치가 필요없는 포터블 에디터로서 해당 라인부분만 바로바로 보여주기 때문에 빠르고 간편하게 사용할수는 있다.

LTFViewr.zip


너무 큰 대용량파일을 빠르게 살펴보고 싶다면 좋은 선택이라고 보인다. 하지만 어디까지나 그건 문서 인코딩이 전부 영어일때인것 같다.

별도의 인코딩을 조절할수가 없다. 분명 필요한 부분에 대한 영문 로그를 살펴보기에는 정말 좋은 툴이다.

하지만 필자는 이 툴을 한번 켜보고 다시 사용하지 않는다.

인코딩 문제를 해결할 수가 없기 때문이다.



그렇다면 어떤툴을 사용해야 할까?



바로 gvim 이라는 툴이다. 

http://www.vim.org/download.php

에서 다운받을 수 있으며 혹시 바로 받으려면 필자가 올려놓은 파일을 받아도 된다.

gvim80-069.exe


리눅스 유저라면 대부분 알고있는 vim 을 윈도우에서 사용할 수 있도록 하는거라고 생각하면 된다.


gvim 의 경우에는 맨 처음 한번은 메모리에 로딩을 하는 방식이기 때문에 처음에 파일을 열때는 용량을 불러들이는 시간이 필요하다.

하지만 기존의 vim 문법을 그대로 적용할 수 있고 이에 따라 문자열의 인코딩도 자유롭게 변경할 수 있어서 정말 필요한 작업에는

이 툴이 제일 유용해 보인다.


필자가 불러들인 2GB의 파일을 불러들이는대는 약 20초정도가 소요되었다. 뭐가 이렇게 오래걸려? 라고 생각할수도 있겠지만

이는 디스크에서 메모리로 읽어들이는 시간과 문법 하이라이트기능이 동작했다는 사실을 생각해보면 오래걸린건 아니다. 하이라이트 기능등을 빼면 더 빨라지지 않을까 생각한다.


필자가 올린 사진을 보고 뭐야 이것도 인코딩이 깨져서 나오자나? 라고 생각할지 모르겠다. 일단 하이라이팅이 되어있으니 보기는 편하지만 글꼴이 깨져서는 의미가 없다.

자 이제 필자가 vim의 자체기능인 인코딩 변경을 시도해 보겠다.


:set encoding=utf8


vim에서 흔히 사용되는 인코딩 변경 명령어인 set encoding 을 입력하였다.


명령어 입력과 동시에 제대로된 텍스트가 보이기 시작한다.

그외에 수많은 vim의 기능들을 이용할 수 있으니 대용량로그나 덤프등을 분석할때 매우 유용하다.


파일을 열때는 마우스 우클릭을 통해 바로 gvim을 통해 열수도 있다.


또 너무 큰 파일을 이용할때는 하이라이팅 기능때문에 스크롤을 내리는데 느릴 수 있다.

이유라면 당연하게도 대용량 파일에 대한 문법검사를 시행하기 때문이다.

이럴때 해결책은 하이라이팅을 끄는것!


진짜로 vim 이기 때문에 파일을 열때는 항상 swp 파일이 함께 생긴다.

만약 로딩을 참지못하고 그냥 종료했을때 swp 확장자를 가진 파일이 생겨있다면 그냥 해당 swp 파일을 삭제해주면된다.



간혹 파일이 너무 큰 경우 안열리는 경우가 발생할 수 있는데 이때는 Gvim 을 먼저 켜고 위의 문법 하이라이팅 끄기를 꼭 해주고 열어보기 바란다.

하이라이팅을 기본적으로 끄는 방법도 있겠지만 아직 필자도 그 자체세팅까지는 건들지 않고 문제없이 쓰고 있다.