오래된 파일을 자동으로 쉽게 삭제할 수 있습니다.
컴퓨터를 사용하다 보면 다운로드 폴더나 임시 백업 폴더 등 파일이 쌓여가는데요.
신경을 잠시라도 못 쓰면 파일이 많이 쌓여 저장 공간을 많이 차지하게 됩니다.
매번 일일이 수정 날짜 순으로 정렬 후 수동으로 삭제하는 작업은 여간 번거로운 일이 아닐 수 없는데요.
특히 서버에 파일이 자동 백업될 때 특정 일보다 오래된 구형 파일만 자동으로 지워주는 시스템이 필수적입니다.
윈도우 명령어와 배치 파일로 오래된 파일만 깔끔하게 자동 삭제할 수 있습니다.
1. 삭제 명령 확인
명령어를 이용해서 실제적으로 원하는 파일만 삭제하는지 먼저 확인이 필요합니다.
파일을 삭제할 임시 폴더에 오래된 파일과 최신 파일을 같이 준비했습니다.
이 폴더에 10일 이전 파일은 모두 삭제할 겁니다.

윈도우 시작 버튼에서 마우스 오른쪽 버튼 클릭 후 [Windows PowerShell(관리자)]를 선택합니다.
![[Windows PowerShell(관리자)]를 선택](https://blog.kakaocdn.net/dna/CfLw0/dJMcaixMQZv/AAAAAAAAAAAAAAAAAAAAAJSV0iNfi_2Xnblr-6ZdpgeecUjGEDhb5o9CN47_6HZt/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=CoiJDU%2FP6HHNoSCLDqzfzvxZbJU%3D)
관리자 권한을 가진 파워쉘이 실행되면 아래 내용을 입력합니다.
명령어에는 오래된 파일을 삭제할 폴더의 경로와 며칠 자 이전 것을 삭제할지 숫자가 필요합니다.
저는 10일 이전 것은 모두 삭제할 거라 "-10"을 입력할 겁니다.
한 달 이전이면 "-30", 두 달이면 "-60"을 입력하시면 됩니다.
Get-ChildItem -Path "삭제할폴더경로" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-삭제할날))} | Remove-Item
Get-ChildItem -Path "C:\Temp\18972" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-10))} | Remove-Item

명령어를 입력하면 "해당 항목과 모든 하위 항목이 제거됩니다".라고 나옵니다.
"Y"를 입력해 주세요.

해당 폴더를 보시면 10일 이전 것은 모두 삭제된 것을 확인할 수 있습니다.

2. 명령어 파일 생성
삭제 명령을 확인했으니 이제 명령어 파일을 만듭니다.
메모장을 실행 후 조금 전 실행했던 명령어를 입력합니다.

이제 [파일]-[다른 이름으로 저장]을 선택 후 파일 형식을 모든파일 *.*로 변경 후 파일 이름을 "파일삭제명령.ps1"로 저장합니다.

3. 작업 스케줄러 등록
명령어 파일도 생성되었으니 작업 스케줄러에 등록하면 됩니다.
작업 표시줄 검색에 "작업 스케줄러"를 입력 후 검색이 되면 실행합니다.

작업 스케줄러가 실행되면 [작업 스케줄러 라이브러리] 폴더에서 마우스 오른쪽 버튼을 클릭합니다.
메뉴가 나오면 [새 폴더]를 선택해 주세요.
![[새 폴더]를 선택](https://blog.kakaocdn.net/dna/1Lq0W/dJMcahln1GY/AAAAAAAAAAAAAAAAAAAAAPN7UlcUj2C-EHgdUJwB6u-jvCEFc6N6PA5mTicB7_ZC/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=lUCpDTZLnRsr9mNPpeQahRFdlCc%3D)
새 폴더가 나오면 새 폴더 이름을 입력 후 [확인] 버튼을 클릭합니다.
![새 폴더 이름을 입력 후 [확인] 버튼을](https://blog.kakaocdn.net/dna/bfEg1S/dJMcahZQz16/AAAAAAAAAAAAAAAAAAAAAN-g4QAHMJ6tPsq5L34o0NYgWtjWQE2O95W5rCzdjKLD/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=eE%2FTQayxhenDD%2F8D7XkDvp8m0cs%3D)
지정한 이름의 새 폴더가 생성되면 우측 빈 곳에 마우스 오른쪽 버튼을 클릭합니다.
메뉴가 나오면 [기본 작업 만들기]를 선택해 주세요.
![[기본 작업 만들기]를 선택](https://blog.kakaocdn.net/dna/basasT/dJMcahZQz17/AAAAAAAAAAAAAAAAAAAAAO6_LdvAF-dmkDmpgiMZ0w2_icxf6hQvHqnkjppj-4ht/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=FxkRm5F%2BKaW2XZTpiftd92AWmH4%3D)
마법사가 실행됩니다.
스케줄러 이름을 입력 후 [다음] 버튼을 클릭해 주세요.
![[다음] 버튼을 클릭](https://blog.kakaocdn.net/dna/bh22B7/dJMcahln1Hm/AAAAAAAAAAAAAAAAAAAAAOmhiXo8k4fYkhvRoPimVciBfRr-f-1ZroBhQolpfiBl/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=Ge%2BXizV%2FROrrzGv1ZGlvzKVh4j4%3D)
스케줄이 실행될 작업을 선택합니다.
매일, 매주 등 원하시는 대로 설정할 수 있습니다.
저는 "매주"를 선택해서 매주 1회 삭제를 하도록 해보겠습니다.
매주가 선택되면 실행될 시간과 날짜를 선택 후 [다음] 버튼을 클릭합니다.

동작에서는 [프로그램 시작] 선택 후 [다음]을 클릭해 주세요.
![선택 후 [다음]을 클릭해](https://blog.kakaocdn.net/dna/nXpcP/dJMcahln1Ho/AAAAAAAAAAAAAAAAAAAAAOLfpUULmPOiWqFtrx3eXXhrPdzYMDvMXReq7IzeCZ51/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=%2BkMVIeS9nVRpbI1KJbRPneDRc4U%3D)
프로그램과 아래 인수에는 다음과 같이 입력합니다.
인수 추가에는 위에서 명령어 저장한 경로와 파일명을 입력하시면 됩니다.
프로그램 : powershell.exe
인수 추가 : -ExecutionPolicy Bypass "C:\Temp\파일삭제명령.ps1"

마법사 설정이 끝났습니다.
[마침]을 클릭합니다.

창이 닫히면 스케줄러가 생성된 것을 확인할 수 있습니다.
생성한 스크립트를 더블클릭합니다.

삭제 속성 창이 열리면 보안 옵션에 [사용자의 로그온 여부에 관계없이 실행]을 선택, [가장 높은 수준의 권한으로 실행]에 체크 후 [확인] 버튼을 클릭하시면 됩니다.
![[사용자의 로그온 여부에 관계없이 실행]을 선택, [가장 높은 수준의 권한으로 실행]](https://blog.kakaocdn.net/dna/u2pPS/dJMcagNyoxB/AAAAAAAAAAAAAAAAAAAAAJe_groaBaixvQp0A1-YRUDAB6ZNU9z1WihfFxVZxVvo/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=Q5MthEKWbnikidI4ir%2B05886WW0%3D)
작업 스케줄러 값이 변경되면 사용자 이름과 비밀번호를 입력 후 [확인] 버튼을 클릭해 주세요
![사용자 이름과 비밀번호를 입력 후 [확인] 버튼](https://blog.kakaocdn.net/dna/d4WUPu/dJMcagNyoxI/AAAAAAAAAAAAAAAAAAAAAJ4qOq4A79TkpNKn_0R47-qT0og1YAZs5u0IsxBxe_GS/img.webp?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=g4p%2BQlJ1F6XMIk4FSCIKbs9h3Qo%3D)
지금까지 윈도우 특정 날짜보다 오래된 파일만 자동으로 삭제해 주는 파워쉘 스크립트 및 작업 스케줄러 등록법을 알아보았습니다.