+ Recent posts

728x90
반응형

안녕하세요.

쉐어스퀘어

입니다.

 

윈도우를 사용할 때

 

우리는 폴더, 파일을 사용합니다. 

 

그 파일, 폴더를 특정 목적에 의해 

 

최종 수정한 일자를 기준으로 

 

일정 기간이 되었을 때 

 

자동으로 삭제를 하도록 하고 싶다면 

 

어떻게 해야 할까요?

 

지금까지 설명드렸던 것처럼 

 

배치 파일에 

 

 

특정 경로에 있는 파일, 폴더 각각의 

 

마지막 수정 일자로부터의 수정하지 않은 일자를 계산해서 

 

파일, 폴더를 삭제하는 스크립트를 작성한 후 

 

작업 스케줄러를 활용해서 

 

하루에 한 번씩이든, 

 

일주일에 한 번씩이든, 

 

설정을 해주시면 되겠지요? 

 

그렇다면 현재 우리에게 가장 필요한 건 

 

스크립트에 들어가는 내용일 것입니다. 

 


 

① 특정 경로에 있는

 

② 디렉터리(폴더)를 포함한 

모든 파일을 탐색합니다. 

 

③ 그리고 각 파일의 마지막 수정일로부터

현재까지의 일수를 구한 후 

특정 일수 값이 되었다면 

 

④ 해당 파일을 삭제합니다. 

 


 

자! ① ~ ④ 까지의 과정이 포함된 스크립트를

 

forfiles 이라는 command 명령어를 활용해서

 

작성했습니다. 

 

아래를 참고하세요! 

 

forfiles /D -5 /P "C:\del_docu_1" /M "*" /c "cmd /C IF @isdir==FALSE ( del /q @path ) ELSE ( rd /S /Q @path )"

 

참 길지만, 

 

저 명령어 한 줄이면 특정 디렉터리(폴더) 경로의 

 

모든 파일에 대해 현재 일자 기준

 

각 파일들의 마지막 수정 일자와 비교해서

 

며칠이 유지되었는지를 계산해서

 

일정 일수가 되면 파일(폴더 포함)을

 

알아서 삭제해 주게 됩니다. 

 

분할해서 설명드리게 되면 아래와 같습니다. 

 

forfile /P "C:\del_docu_1"

 

C:\del_docu_1 경로를 기준 경로로 설정한다.

 

/M "*" 

 

모든 파일(폴더)을 대상으로 한다. 

 

/c "cmd /C if @isdir==FALSE ( del @path ) else ( rmdir /Q /S @path )

 

" " 에 포함된 명령으로 커멘드 명령을 실행한다.

 

" " 명령 설명 

 

 

(현재 파일(폴더)를 하나하나 탐색해 갈 때)

 

" 만약 폴더가 아니면(파일 이면)

 

( del @path ) 명령으로 파일을 삭제한다. 

 

폴더면 ( rmdir /Q /S @path ) 명령으로

 

하위 디렉터리까지 포함하여 삭제한다."입니다. 

 

※ 그리고 위에 스크립트에 보이는 괄호 "( )"는 정말 중요합니다. 

 

각 경우에 대하여 스크립트를 실행할 때 

 

실행 스크립트의 시작~끝을 구분해 주는 역할을 합니다. 

 

절대 빠져선 안됩니다. 

 

이렇게 배치 파일을 만드시고, 

 

작업 스케줄러를 원하시는 대로 생성해서 

 

주기적으로 OS 자체적으로 

 

해당 폴더를 체크하고, 

 

불필요한 파일들을 삭제하도록 시켜주시면 됩니다. 

 

윈도우로 작동하는 서버든, PC든 

 

모든 곳에서 활용 가능한 부분이기 때문에 

 

매우 유용할 거라 생각이 들고, 

 

또한 응용해서 작업하실 수 있는 부분들이

 

또 있으실 거라고 봅니다.

 

혹시 배치 파일 생성이나, 

 

작업 스케줄러 설정 또는 

 

작업 스케줄러 생성 배치 파일 실행 등과 같은 

 

내용에 대해 모르시는 부분이 있다면 

 

아래의 링크를 통해 먼저 이해하시고, 

 

오늘의 내용을 적용해서 진행해 보시면 될 것 같습니다. 

 

[배치 파일 생성 관련 콘텐츠]

 

https://itchapter.tistory.com/3?category=1071190 

 

[배치파일(.bat) 정보공유]필요한 PC 명령들을 하나의 파일에 담아 실행할 수 있게 하는 배치파일(.

안녕하세요. 쉐어스퀘어 입니다. 어느덧 가을이 왔습니다. 공기가 시원해지고, 저녁이 되면 추위가 느껴질 정도로 기온이 내려가기도 하네요. 이럴 때 감기 걸리기가 좋은 것 같습니다. 감기 조

itchapter.tistory.com

 

[작업 스케줄러 생성(배치 파일로 생성 방법 포함) 관련]

 

https://itchapter.tistory.com/7

 

[배치파일(.bat) 정보공유]PC에서 주기적, 반복적인 처리를 위한 작업스케줄러(SchTasks) 등록 배치파

안녕하세요. 쉐어스퀘어 입니다. 지난 강의에서는 네트워크 드라이브를 임의의 알파벳으로 연결하는 방법 파일 존재 유무를 체크하는 조건문을 생성해서, TRUE/FALSE에 따라 파일을 복사하거나,

itchapter.tistory.com

 

이상

쉐어스퀘어

였습니다.

 

오늘의 글이 도움이 되셨다면, 
하단의 [공감], [구독] 버튼을 꾸욱 눌러주시면 

IT관련해서 더 유용한 글을 제가 작성하는데에 
큰 힘이 됩니다 :) 
감사합니다.

 

 

728x90
반응형