윈도우10에서 지정된 날짜 경과 시 자동으로 파일 삭제하는 방법

윈도우에서 저장소 센스 구성을 이용 하면 컴퓨터의 저장 공간을 자동으로 확보 할 수 가 있습니다.

하지만 이 기능은 저장소 공간을 제어하는 데 유용할 수 있지만, 사용자가 원하는 경로의 파일을 지정 된 기간 동안 모니터 링 해서 삭제 하는 옵션을 제공 하고 있지는 않습니다.

주기적으로 삭제 해도 되는 파일 이 있다면 특정 위치에 보관 후 PowerShell 및 작업 스케줄러를 사용하여 지정된 일 수보다 오래된 폴더의 파일을 모니터링하고 정리하도록 적용 할 수 있습니다.

그래서 오늘은 윈도우10에서 원하는 날짜가 지나면 자동으로 파일을 삭제하는 방법에 대해서 알아 보겠습니다.

튜토리얼 환경 : 윈도우10 ( 윈도우11 에서도 동일하게 작동 합니다.)

PowerShell 로 지정 일 경과 시 자동으로 파일 삭제하는 방법-기본편

PowerShell 에 명령어 입력으로 지정 일 경과 시 마다 원하는 경로의 파일을 자동으로 삭제하는 방법 입니다.

적용 순서를 안내 하겠습니다.

주의: 잘못된 매개 변수를 입력 하게 되면 중요한 파일이 삭제 될 가능 성이 있으니 임시 폴더 등을 생성 하여 아래 명령을 테스트해보길 권장 합니다.

윈도우에서_퀵링크_메뉴로_파워쉘_관리자_권한_실행
윈도우에서 퀵링크 메뉴로 파워쉘 관리자 권한 실행
  1. 1 아래의 절차로 윈도우 ‘파워쉘’ 을 실행 해 줍니다.
    1. 1 윈도우 ‘퀵링크’ 패널 (단축키:   Win +   X ) 을 실행 해 줍니다.
    2. 2 Windows PowerShell(관리자)(A) 항목을 클릭 해 줍니다.
    3. 3 사용자 계정 컨트롤 창이 보이는 경우 관련된 안내를 확인 후 하단 버튼을 눌러 줍니다.
파워쉘에서_삭제_스크립트_입력
파워쉘에서 삭제 스크립트 입력
  1. 2 파워쉘이 실행 되면 아래 설명을 참고해 명령어를 본인의 환경에 맞도록 수정 등록 합니다. 입력 후   Enter 를 눌러줍니다.
    • “C:\Users\EZM\Desktop\TEST” : 사용할 폴더의 경로를 지정, 본인의 경로로 수정 해야 합니다. 파일 또는 폴더의 경로를 확인 하는 방법은 여기에서 확인 할 수 있습니다.
    • .AddDays(-30) : 자동으로 삭제 할 일정, 30일로 되어 있지만 원하는 일자로 수정 가능 합니다.
Get-ChildItem –Path "C:\Users\EZM\Desktop\TEST" -Recurse Where-Object {($_.LastWriteTime -lt (Get-Date)AddDays(-30))} Remove-Item
  1. 3 명령어 입력 만으로 원하는 경로의 폴더를 지정된 일정에 따라 사용 하지 않는 파일을 자동으로 삭제 하게 됩니다.

작업 스케줄러로 삭제 하는 방법-응용편

위 기본 명령어를 활용하여 작업 스케줄러에서 좀 더 다양한 옵션을 적용 해 볼 수 있습니다. 초보자의 경우 작업 스케줄러를 이용해 특정 프로그램을 자동으로 실행하거나 종료하는 방법을 통해서 기본적인 내용을 확인 할 수 있습니다.

1. 메모장에 파워쉘 스크립트 만들기

메모장에 위에서 안내한 명령어를 이용해 파워쉘 스크립트 파일을 생성 해주어야 합니다.

메모장에서_명령어_입력후_ps_확장자로_저장
메모장에서 명령어 입력후 ps 확장자로 저장
  1. 1 메모장(.txt) 을 실행 후 위에서 정리 해둔 명령어 (1) 를 입력 해 줍니다.
  2. 2 생성한 메모장 파일의 이름 과 확장자를 autocleanup.ps1 과 같이 원하는이름.ps1 (2) 형식으로 ‘다른 이름으로 저장’ (단축키 :   Ctrl +   Shift +   S ) 해 줍니다. .ps1 은 파워쉘 스크립트 파일의 확장자 형식 입니다.

2. 작업 스케줄러 삭제 스케줄 생성

‘작업 스케줄러’를 실행 하고 여러가지 옵션을 하나 씩 설정 해 주어야 합니다.

2.1. 작업 스케줄러 실행 후 작업 만들기

우선 윈도우에서 ‘작업 스케줄러’ 를 실행 하고 ‘작업 만들기’를 생성 해야 합니다.

윈도우_작업_스케줄러_검색_후_실행
윈도우 작업 스케줄러 검색 후 실행
  1. 1 윈도우의 검색 창에서 “작업 스케줄러” 등으로 입력 해 준 다음 검색 결과를 클릭 해 줍니다.
작업_스케줄러_라이브러리에서_새폴더_생성
작업 스케줄러 라이브러리에서 새폴더 생성
  1. 2 ‘작업 스케줄러’ 가 실행 되면 왼쪽 파일 트리 박스에서 ‘작업 스케줄러 라이브러리’ 폴더를 마우스 오른쪽 버튼으로 클릭 해 메뉴를 확장 해줍니다.
  2. 3 메뉴에 서 새 폴더(N) 옵션을 선택 해 줍니다. 그냥 진행 해도 되지만 시스템 작업에서 작업을 구성하고 분리할 수 있도록 새 폴더를 만들고 진행 합니다.
작업_스케줄러_라이브러리_폴더_이름_지정
작업 스케줄러 라이브러리 폴더 이름 지정
  1. 4 ‘새 폴더의 이름 입력’ 창이 생성되면 원하는 이름을 입력 후 확인 버튼을 눌러 줍니다.
작업스케줄러에_작업_만들기_옵션_선택
작업스케줄러에 작업 만들기 옵션 선택
  1. 5 생성한 폴더를 다시 한번 마우스 오른쪽 버튼으로 클릭 해 메뉴를 확장 후 작업 만들(R) 옵션을 선택 해 줍니다.

2.2. 작업 만들기 일반 설정

‘새작업 만들기’ 창이 열리게 되면 상단 탭의 순서대로 세부 설정을 해주면 됩니다.

우선 일반 설정에서 체크할 내용 입니다.

작업_스케줄러_새작업_만들기에서_일반_탭_설정
작업 스케줄러 새작업 만들기에서 일반 탭 설정
  1. 1 탭 위치가 일반 으로 되어 있는지 체크 후 상단 이름(M) (1) 에 원하는 값을 지정 해 줍니다. 식별이 편한 이름으로 정해줍니다.
  2. 2 아래 ‘보안 옵션’ 에서 사용자의 로그온 여부에 관계없이 실행(W) (2) 에 체크를 해 줍니다.

2.3. 작업 만들기 트리거 설정

‘새작업 만들기’의 트리거 탭으로 이동 해서 동작이 진행 할 조건을 설정 해 주어야 합니다.

작업_스케줄러_트리거_새로_만들기
작업 스케줄러 트리거 새로 만들기
  1. 1 트리거 탭에서 하단 새로 만들기(N) 버튼을 클릭 해 줍니다.
작업_스케줄러_트리거_예약_상태_일정_등록
작업 스케줄러 트리거 예약 상태 일정 등록
  1. 2 ‘새 트리거 만들기’ 창이 생성 되면 왼쪽 ‘설정’ (1) 섹션에서 원하는 옵션을 선택 해 줍니다. 어떤 옵션을 선택 해도 진행 방식은 동일 합니다.
  2. 3 기간을 지정 후 오른쪽 세부 설정 (2) 에서 월(H)일(A) 의 값을 정해줍니다.

2.4. 작업 만들기 동작 설정

‘새작업 만들기’의 동작 탭으로 이동 해서 위 트리거 조건에 따라 수행 할 동작을 지정 해 주어야 합니다.

작업_스케줄러_동작_새로_만들기
작업 스케줄러 동작 새로 만들기
  1. 1 동작 탭에서 하단 새로 만들기(N) 버튼을 클릭 해 줍니다.
작업_스케줄러_새_동작_만들기_옵션_설정
작업 스케줄러 새 동작 만들기 옵션 설정
  1. 2 ‘새 동작 만들기’ 패널에서 아래 정보를 입력 해 줍니다.
    • 프로그램/스크립트(P) : powershell.exe
    • 인수 추가(옵션)(A): -ExecutionPolicy Bypass C:\Users\EZM\Desktop\cleanup.ps1 형식으로 입력 해 줍니다. 경로는 파워쉘 스크립트 파일 (.ps1)의 경로를 입력 해 주어야 합니다.

2.5. 작업 만들기 설정 옵션 체크

‘새작업 만들기’의 설정 탭으로 이동 해서 설정 옵션을 체크 해주어야 합니다. ‘조건’ 탭에서는 따로 설정 할 것은 없습니다.

작업_스케줄러_설정_옵션_체크
작업 스케줄러 설정 옵션 체크
  1. 1 아래 옵션을 추가로 체크 해 위 이미지 와 동일한 항목에 체크가 될수 있도록 해 줍니다.
    • 요청 시 작업이 실행되도록 허용(L)
    • 예약된 시작 시간을 놓친 경우 가능한 대로 빨리 작업 시작(S)
    • 작업이 실패하는 경우 다시 시작 간격(T)
  2. 2 설정을 모두 체크 후 하단확인 버튼을 눌러 줍니다.
작업스케줄러_저장시_사용자_계정_정보_입력이_필요_할_수_있음
작업스케줄러 저장시 사용자 계정 정보 입력이 필요 할 수 있음
  1. 3 ‘새작업 만들기’ 를 저장 하게 되면 사용자의 권한에 따라 ‘사용자 계정 정보’를 입력해야 할 수 있으니 생성 되면 입력 해 줍니다.

모든 설정이 마무리 되었고 위와 같이 설정 하게 되면 지정한 경로에 있는 오래된 파일들을 지정한 일정에 따라 자동으로 삭제 하게 됩니다.

참고: 이름을 변경하거나 폴더를 다른 위치로 이동 하게 되면 작업이 되지 않으니 경로 변경 시 스크립트, 작업 스케줄러의 경로를 모두 수정 해야 합니다.

마무리

이렇게 윈도우10에서 원하는 날짜가 지나면 자동으로 파일을 삭제하는 방법에 대해 알아 보았습니다.

기본 원리(명령, 스크립트) 만 알고 있다면 ‘작업 스케줄러’ 등 여러 옵션들을 사용 하여 활용 될 수 있을 것 입니다. 자신이 편한 방식으로 선택 하여 사용 해 보시길 바랍니다.

실제 작동 하는지 테스트는 기간을 아주 짧게 정해두면 손쉽게 확인 할 수 있습니다.

참고

Leave a Comment