그렇다 보니 압축을 풀고 메모장으로 하나씩 다~ 열어보는 거? 역겨웠습니다. 그 많은 파일 중에 제가 찾고 싶은 단어나 문장을 언제 다 열어보고 자빠졌습니까? 특히 코어프로텍트에 기록되지 않는 특정 채팅이나 에러를 찾으려고 할 때 말입니다.
그래서 로그를 한 눈에 볼 수 있는 프로그램들을 검색해봤습니다. 마음에 드는 건 아예 없고 비스무리한 게 있더라도 오래전에 업데이트가 끊겨 마땅하지 않았습니다.
윈도우 명령 프롬프트(cmd)에 좋은 기능이 있습니다. findstr이라는 명령입니다. 아 이걸로 내가 만들어서 써야겠다 싶었고, 만들었습니다.
혹시나 단 한분이라도 이런 기능이 필요하신 분이, 나랑 같은 생각을 했던 분이 계시지 않을까? 라는 생각에 공유합니다.
너무 단순한 구조라서 복잡한 기능은 없습니다. 그냥 쓰거나 배워서 고쳐쓰세요..
0. 주의사항
1. 뷰어 파일은 뷰어 파일이 위치한 경로와 그 하위 경로 전체의 .log 파일을 검색하므로 되도록 서버.jar 파일이 있는 폴더나 logs폴더에 넣어두고 사용하셔서 너무 많은 파일을 검색하다 멈춰버리는 일 없으시기 바랍니다..
2. .log.gz 압축 해제는 수동입니다. 직접하세요. 프롬프트가 tar 명령으로 gz 압축해제를 지원한다고 하는데 정작 인식이 안돼서 기능 못넣었습니다.
1. 사용법
실행하고 곧바로 검색할 단어를 입력하시면 됩니다. 한글도 영어도 숫자도 아무튼 모두 검색할 수 있고 올바르게 표시됩니다.. 서버로그 뿐만 아니라 클라이언트 로그도 읽을 수 있으니 하나를 복사해서 클라이언트측 로그 폴더에 넣어두고 사용하세요. (C:\Users\컴퓨터 이름\AppData\Roaming\.minecraft\logs)
@echo off
setlocal
:input
chcp 65001
cls
set /p _str=검색할 문자열을 입력하십시오. :
if "%_str%" == "" (
goto input
) else if "%_str%" == "exit" (
goto end
) else (
chcp 949
cls
rem findstr /s /n /i "%_str%" *.log
findstr /s /i "%_str%" *.log
pause
goto input
)
:end
exit