PowerShell을 사용하여 파일 생성 시기를 기준으로 오래된 파일을 삭제하는 방법
여기저기 흩어져 있는 오래된 파일을 수동으로 정리하는 것은 끝없는 작업처럼 느껴질 수 있습니다.직접 삭제해 보셨겠지만, 시간이 오래 걸리고, 실수를 하기 쉽고, 아예 삭제하는 것을 잊어버리기도 합니다.바로 이럴 때 PowerShell이 유용하게 사용될 수 있습니다. PowerShell은 지루한 정리 작업을 자동화하여 사용자가 더 중요한 작업에 집중할 수 있도록 도와줍니다.특히 임시 폴더, 로그 파일, 다운로드 파일 등을 깔끔하게 정리하고 중요한 파일을 실수로 삭제할 위험을 줄이고 싶을 때 매우 유용합니다.
PowerShell을 사용하여 파일을 자동으로 정리하는 방법
문제 영역을 정확히 짚어낼 수 있는 탄탄한 스크립트부터 시작하세요.
기본적인 아이디어는 다음과 같습니다. PowerShell에 검색할 위치( $Source )와 삭제 기준일( $Days.log )을 지정합니다.필요에 따라 파일 형식(예: 또는 ) 으로 필터링할 수도 있습니다 .tmp.스크립트는 삭제한 파일 목록을 로그로 저장하므로 나중에 검토할 수 있습니다.실수가 발생할 수 있으므로 이는 매우 중요합니다.일반적인 설정은 다음과 같습니다.
# File Cleanup PowerShell Script # Configuration Variables $Source = "C:\Temp" # Change this to your target folder $Days = 90 # Files older than 90 days will be deleted $ext = ".txt", ".log", ".tmp" # File extensions you want to delete $log = "$Source\cleanup_$(Get-Date -Format yyyyMMddHHmmss).txt" $DateBeforeXDays = (Get-Date).AddDays(-$Days) # Logging setup Start-Transcript -Path $log # Find and delete old files Get-ChildItem $Source -Recurse -Include $ext | Where-Object { $_. LastWriteTime -lt $DateBeforeXDays -and -not $_. PSIsContainer } | Remove-Item -Force -Verbose Stop-Transcript
이 설정은 기본적인 구성이지만 유연하게 사용할 수 있습니다.일부 컴퓨터에서는 스크립트가 특정 파일이나 권한 문제 때문에 실행에 어려움을 겪을 수 있으므로, 필요한 경우 관리자 권한으로 실행하는 것이 좋습니다.또한, 특히 파일이 열려 있거나 보호되어 있는 경우 삭제 명령이 모든 파일을 즉시 삭제하지 못하는 경우가 있습니다.이럴 때는 조금 기다리거나 다시 실행해야 할 수도 있습니다.
이 스크립트는 어디에서 실행해야 하나요?
관리자 권한으로 PowerShell을 실행하세요(특히 대상 폴더가 시스템 파일이거나 접근이 제한된 폴더인 경우).스크립트를 붙여넣고 실행하세요.이 스크립트를.ps1 파일로 저장하고 cleanup.ps1Windows 작업 스케줄러를 사용하여 자동으로 실행되도록 예약할 수 있습니다.단, 실행 정책에서 스크립트 실행이 차단된 경우 허용하도록 설정해야 합니다 Set-ExecutionPolicy RemoteSigned.중요한 파일을 실수로 삭제하지 않도록 실행 전에 항상 파일 경로와 확장자를 확인하세요.
고객의 요구에 맞춘 맞춤 제작
- 폴더를 변경하세요: 업데이트 폴더가
$Source다운로드 폴더, 로그 폴더 또는 임시 폴더를 가리키도록 설정하세요. - 오래된 파일의 보관 기간을 조정하세요. 정리 빈도에 따라 설정을 변경할 수 있습니다.
$Days예를 들어, 주간 정리의 경우 30일, 반기 정리의 경우 180일 등으로 설정하세요. - 확장자를 선택하세요: 배열을 편집하여
$ext특정 파일 형식(예: 로그 또는 임시 파일)만 필터링할 수 있습니다. - 재귀 건너뛰기:
-Recurse최상위 폴더만 정리하고 하위 폴더는 정리하지 않으려면 이 옵션을 제거하세요.
안전 수칙
실행하기 전에 항상 안전한 환경이나 가상 폴더에서 먼저 테스트하십시오.부주의하면 스크립트가 의도한 것보다 더 많은 파일을 삭제하도록 설정하기 쉽습니다.미리 복원 지점을 만들어 두는 것도 좋은 생각입니다.또한, 파일 삭제 권한이 있는 사용자 계정으로 실행하되, 시스템 파일 삭제가 걱정된다면 관리자 권한으로 실행하지 마십시오.
정리 작업 자동화
- 작업 스케줄러 열기
- 새 작업을 생성하고 이름을 지정하세요.
- 스크립트와 함께 PowerShell을 실행하도록 구성하십시오(사용
powershell.exe -File "C:\path\to\cleanup.ps1"). - 주간, 일간 또는 월간 정리를 위한 트리거를 설정하세요.
- 적절한 권한으로 실행되는지 확인하십시오.
설정이 완료되면 컴퓨터는 마지막 순간에 허둥댈 필요 없이 스스로 깔끔하게 유지됩니다.다만, 중요한 파일이 삭제되지 않았는지 확인하기 위해 로그 파일을 주기적으로 확인하는 것이 좋습니다.아무리 훌륭한 스크립트라도 설정이 변경되면 오작동할 수 있기 때문입니다.
솔직히 이 방법이 완벽한 건 아니지만, 매번 수동으로 폴더를 클릭하는 것보다는 훨씬 낫습니다.단, 정리 작업을 실행하기 전에 경로와 확장자를 꼭 다시 확인하세요.실수로 소중한 예전 프로젝트 파일을 삭제하는 일을 방지할 수 있을 겁니다.즐거운 정리 작업 되세요!
요약
- 폴더 경로, 보관 기간 및 파일 형식을 구성합니다.
- 관리자 권한으로 PowerShell에서 스크립트를 실행하세요.
- 작업 스케줄러를 통해 정기적인 정리 작업을 예약하세요.
- 항상 로그를 확인하고 먼저 테스트하십시오.
마무리
PowerShell은 완벽하지 않으며, 때때로 스크립트를 약간 수정해야 할 수도 있습니다.하지만 정리 작업을 자동화하면 시간과 수고를 크게 절약할 수 있습니다.철저한 테스트를 거치고, 필요한 경우 백업을 유지하고, 스크립트 로그를 확인하는 것을 잊지 마세요.이 스크립트가 누군가의 작업 시간을 몇 시간이라도 줄여주기를 바랍니다.솔직히 말해서, 누가 수동으로 파일을 찾는 것을 좋아하겠습니까?
관련 기사
이 글이 도움이 되었나요?