메뉴 건너뛰기

XEDITION

MaraSong :: 정보와 기술 IT

Windows 오래된 로그파일 정리하기

2017.03.01 19:16

MaraSong 조회 수:2604

윈도에서 로그파일을 압축하거나 삭제해야 하는 경우에 사용할 수 있는 배치 스크립트 예시입니다.

 

먼저 시스템에 7z 이 설치되어 있어야 하고, 설치경로 (기본값 C:\Program Files\7-Zip) 를 PATH 에 추가해야 합니다.

파워쉘이 없는 경우가 있으니 배치로 작성하면 아래와 같습니다.

윈도 배치는 날짜함수가 없어서 계산해야 하는데, 이게 매월 1일에는 제대로 동작하지 않습니다.

(매월 1일 혹은 매월 초에는 하루전 날짜를 제대로 가져오지 못합니다)

 

아래에서는 set /a DD=1%DD%-102 이렇게 날짜 계산시 102 를 빼줬는데, 이러면 오늘이 2017-02-28 이니까

2017-02-26 로그를 압축하고 삭제하게 됩니다. (101 = 1일전, 102 = 2일전, 103 = 3일전, 104 = 4일전...)

echo %workdate% --> 20170226
echo %workdate2% --> 170226
echo %workdate3% --> 2017-02-26

 

@echo off
setlocal
rem MaraSong's Log file compress and delete script
rem Information sharing is important.

rem compress the yesterday logfile.
rem korean windows = delims=- 한글 윈도인 경우, 아래 for 문에서 델리미터를 - 로 지정해야 함.
rem chinese and english windows = delims=/ 영문, 중문 윈도인 경우, 아래 for 문에서 델리미터를 / 로 지정해야 함.

for /f "tokens=1-3 delims=- " %%A in ('echo %DATE%') do (set YY=%%A&SET MM=%%B&SET DD=%%C)

rem 101=1day ago, 102=2days ago, 103=3days ago...
set /a DD=1%DD%-102
set /a MM=1%MM%-100

rem echo %DD%, %MM%

if  %DD% GTR 0 goto end

set /a MM=%MM%-1

if %MM% GTR 0 goto leap

set /a DD=31
set /a MM=12
set /a YY=%YY%-1

REM echo %YY%, %MM%, %DD% -> 2016, 12, 31 goto end

:leap
set /a TT=%YY%/4
set /a TT=%TT%*4
rem echo %MM%, %DD%, %TT%
if %YY% equ %TT% goto mon%MM%
if %MM% equ 2 goto mon21
goto end

:mon1
:mon3
:mon5
:mon7
:mon8
:mon10
:mon12
set /a DD=31
goto end

:mon2
set /a DD=29
goto end

:mon21
set /a DD=28
goto end

:mon4
:mon6
:mon9
:mon11
set /a DD=30
goto end

:end
set /a DD=%DD% + 100
set DD=%DD:~1,2%
set /a MM=%MM% + 100
set MM=%MM:~1,2%
SET AA=0
SET BB=0
SET CC=0
SET FF=0

if "%*" == "" goto work_yesterday
rem echo %1
set workdate=%1
goto comp_7z

:work_yesterday
rem echo %YY%%MM%%DD%
set workdate=%YY%%MM%%DD%
goto comp_7z

:comp_7z
rem echo %workdate%
set workdate2=%workdate:~2,6%
set workdate3=%workdate:~0,4%-%workdate:~4,2%-%workdate:~6,2%
rem check the work date
echo %workdate%
echo %workdate2%
echo %workdate3%
pause

rem ----- log file ----- 로그 파일을 압축하는 경우
7z a -t7z D:\GameBin\LOG\Logfile.%workdate%.7z D:\GameBin\LOG\*LOG.%workdate2%_*.txt
del D:\GameBin\_LOG\*.%workdate2%_*.txt

rem ----- log dir ----- 로그 디렉토리를 압축하는 경우
7z a -t7z D:\GameBin\LOG\Logdir.%workdate%.7z D:\GameBin\LOG\LOG_%workdate3%
rmdir /Q /S D:\GameBin\LOG\LOG_%workdate3%

 

 

이것만 있으면 다양하게 응용이 가능하고, 이제 이 파일을 작업 스케줄러나 예약된 작업에 걸면 됩니다.

실제 사용할때에는 echo 나 pause 를 지워야 합니다. 주석은 rem 을 맨앞에 적으면 됩니다.

 

 

번호 제목 글쓴이 날짜 조회 수
32 대화형 인공지능 챗GPT 와 바드 Bard 비교 동영상 MaraSong 2023.04.08 148
31 다크웹 맛보기 - 개인정보 유출 현황 MaraSong 2023.03.03 177
30 아바타AI 무료버전 소개 ^_^ 2023.01.31 222
29 노스맵 - 실시간으로 인터넷 공격상황을 보여주는 사이트 MaraSong 2019.02.06 566
28 깃헙 Github 을 이용한 무료, 깔끔 홈페이지 만들기 file MaraSong 2019.01.23 661
27 텔레그램 다운, 서비스 기상도 file MaraSong 2019.01.21 707
26 [사전예약] 아이맥 레티나 4.5K, 에어태그 : 쿠팡 MaraSong 2021.05.19 751
25 ZIO GSB2460MSW - 지오 스위치, SSH 접속하기 file MaraSong 2019.04.04 758
24 녹스 Nox 바탕화면 아이콘이 사라지는 현상 file MaraSong 2019.03.21 766
23 모바일 앱 추천 사이트 - 탭아이오 MaraSong 2019.07.24 787
22 구글 유저라면 도움되는 URL MaraSong 2019.04.25 796
21 구글 애드센스 주소인증 - 핀번호 받음. ^_^ 2021.02.02 839
20 인터넷 불법 정보, 과연 차단할 수 있을까 - KT 음란물 차단을 바라보며. MaraSong 2019.02.13 846
19 [쿠팡] 아이패드 프로 - 사전예약 (아직 준비중) MaraSong 2021.05.12 883
18 @MaraTTSBot - 사진에서 한글을 추출하고, 글자를 읽어주는 텔레그램 봇 소개. file MaraSong 2019.03.26 916
17 깃강좌 추천 - 백로그 빽로그 https://backlog.com/git-tutorial/kr MaraSong 2019.04.23 940
16 광고없는 인스타그램 이미지/사진/동영상 저장 사이트 MaraSong 2020.04.26 1031
15 세이프캐스트 SafeCast 방사능 지도 - 일본어 사이트 file MaraSong 2019.02.24 1058
14 @MaraOCRbot 이미지에서 텍스트를 추출하고 한국어로 번역해주는 텔레그램 봇 소개 file MaraSong 2019.02.04 1139
13 중국에서 연결 잘되는 네임서버 - China DNS MaraSong 2016.05.23 1166





* 쿠팡 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있습니다.

위로