이전 에 폴더 안에 새 파일이 나타날 때 자동으로 파일을 이동하거나 복사하는 DropIt 이라는 프로그램에 대해 썼습니다 . 이것은 예를 들어 로컬 하드 드라이브의 공간이 제한되어 있고 모든 다운로드를 외부 저장 장치(storage device) 로 옮기려는 경우에 유용할 수 있습니다 .
파일을 자동으로 삭제하려면 Windows(Windows) 에서 두 가지 방법을 사용할 수 있습니다 . 첫 번째 방법은 특정 폴더의 파일 삭제 일정을 구성할 수 있는 AutoDelete 라는 프리웨어 앱 을 다운로드하는 것입니다. (freeware app)나는 이미 프로그램 사용에 대한 두 가지 자세한 가이드( 여기 및 여기 )를 작성했으므로 작업을 완료하는 데 프리웨어 프로그램을 선호하는 경우 해당 가이드를 확인하십시오.
파일을 삭제하는 두 번째 방법은 배치 파일 을 만든 다음 해당 (batch file)배치 파일(batch file) 이 실행되도록 예약하는 것 입니다. 타사 소프트웨어를 설치하지 않고도 이 모든 작업을 수행할 수 있습니다. 이 기사에서는 배치 파일(batch file) 을 만든 다음 작업 스케줄러(Task Scheduler) 를 사용하여 스크립트를 반복적으로 실행하는 단계를 안내합니다.
1단계 – 배치 파일 생성
배치 파일(batch file) 을 만드는 것이 조금 무섭거나 너무 기술적으로 들리더라도 그 의미를 알 필요가 없으므로 걱정하지 마십시오. 무엇을 복사하여 붙여넣어야 하는지, 어디에서 어떤 옵션을 변경할 수 있는지 설명하겠습니다. 먼저 (First)메모장을(Notepad and copy) 열고 다음 텍스트 줄을 복사하여 붙여넣습니다.
forfiles -p "C:\Test" -s -m *.* /D -5 /C "cmd /c del @path"
위의 줄은 아마도 의미가 없을 것입니다. 아래에서 설명할 것이므로 완벽하게 괜찮습니다. 기본적으로(Basically) C:Test 폴더와 5일 이상 된 하위 폴더(folder and sub-folders) 의 모든 파일을 삭제하도록 Windows에 지시합니다 . 메모장 파일(Notepad file) 의 모양 은 다음과 같습니다.
명령에 대해 더 자세히 알아보기 전에 파일을 저장하고 테스트를 실행(test run) 해 보겠습니다 . 먼저 컴퓨터의 (First)C 드라이브(C drive) 루트에 Test 라는 폴더를 만듭니다 . 그런 다음 파일(File) – 저장 을 클릭하고 파일을 (Save)배치 파일(batch file) 로 저장 합니다 . 그렇게 하려면 이름 다음에 .bat를 입력한 다음 파일 형식(Save as type) 드롭다운을 모든 파일(All Files) 로 변경합니다 .
파일을 하드 드라이브의 원하는 위치에 저장할 수 있으며 실제로는 중요하지 않습니다. 이제 Test 폴더에 더미 파일을 만든 다음 Delete.bat 파일을 두 번 클릭하여 실행합니다. 삭제되는 것이 있습니까? 아마 아닐거야!
아무것도 삭제되지 않은 이유는 명령 에 5일 이상된 파일을 의미하는 /D -5파일 이 생성된 시기에 관계없이 파일(file regardless) 을 삭제하려면 -5 를 -0 으로 변경하거나 (-0)/D -5 부분을 완전히 제거할 수 있습니다 . 이제 실행하면 모든 파일이 삭제됩니다.
명령을 사용자 정의하기 위해 가장 먼저 할 수 있는 일은 디렉토리를 C:Test가 아닌 다른 디렉토리로 변경하는 것입니다. Windows 탐색기(Windows Explorer) 에서 원하는 디렉토리 의 경로를 복사하여 메모장(Notepad) 에 있는 명령에 붙여넣는 것만 큼 간단합니다 .
다음은 디렉토리 경로 뒤에 표시 되는 -s 매개변수입니다. ( -s)이는 명령이 모든 하위 폴더도 조사해야 함을 나타냅니다. 하위 폴더에서 파일을 삭제하지 않으려면 -s 매개변수를 제거하십시오.
다음은 -m 다음에 *.* 가 옵니다. 이는 명령이 모든 종류의 파일을 평가해야 함을 의미합니다. PDF 파일이나 JPG 이미지 와 같이 폴더에서 특정 파일 형식 만 삭제하려면 (file type) *.* 를 *.pdf 또는 *.jpeg 로 변경하면 해당 파일만 제거됩니다.
/D -X 부분 은 삭제 자격을 얻기 위해 파일이 얼마나 오래되어야 하는지에 대해 이미 이야기했습니다. 1보다 큰 값으로 유지하거나 0으로 설정하거나 완전히 제거할 수 있습니다. 이것이 우리가 명령에 대해 알아야 할 전부입니다.
이 명령을 실행할 때 주의해야 할 몇 가지 사항이 있습니다. 첫째, 파일이 삭제되면 휴지통(Recycle Bin) 으로 이동하지 않고 영구적으로 삭제되므로 사용시 주의하시기 바랍니다. 둘째, 이 명령은 폴더가 아닌 파일만 삭제합니다.
이것은 배치 파일(batch file) 이므로 동일한 파일에 이 명령의 여러 버전을 추가할 수도 있습니다. 예를 들어, 여기 에서는 파일이 얼마나 오래된지에 관계없이 180일보다 오래된 모든 DOCX 파일, 60일보다 오래된 모든 (DOCX)PDF 파일 및 모든 TXT 파일 을 삭제 하는 배치 파일 을 만들고 있습니다.(batch file)
2단계 – 배치 파일 예약
이제 배치 파일(batch file) 을 만들고 저장했으므로 계속해서 반복적으로 실행되도록 예약하겠습니다. 이렇게 하려면 작업 스케줄러(Task Scheduler) 를 열어야 합니다 .
운 좋게도 이미 배치 파일(batch file) 을 예약하는 방법에 대한 기사를 작성 했으므로 시작하려면 해당 페이지를 여십시오. PC 시작 시 일정 배치 파일(Schedule Batch File on PC Startup) 섹션 까지 아래로 스크롤(Scroll) 하고 따르십시오.
변경해야 할 유일한 것은 Trigger 입니다. 매일(Daily) , 매주(Weekly) , 매월(Monthly) , 컴퓨터가 시작될 때(When the computer starts) , 로그온(When I log on) 할 때 또는 특정 이벤트가 기록될(When a specific event is logged) 때 중에서 선택할 수 있습니다 .
매주(Weekly) 또는 매월(Monthly) 과 같은 항목을 선택하고 다음(Next) 을 클릭 하면 스크립트를 실행할 정확한 시간과 요일(time and days) 을 구성할 수 있는 새 화면이 표시 됩니다.
바라건대 이것은 PC에서 파일을 삭제하기 위해 몇 가지 간단한 자동화 작업을 수행해야 하는 대부분의 사람들에게 좋은 솔루션입니다. 질문이 있으시면 언제든지 댓글을 남겨주세요. 즐기다!
How to Automatically Delete Files in Windows
Earlier I wrote about a program called DropIt that automatically moves or copies files for you when new files appear inside a folder. This can be useful, for example, if you have limited space on a local hard drive and want to move all your downloads off to an external storage device.
If you want to automatically delete files, there are two ways you can go about it in Windows. The first method involves downloading a freeware app called AutoDelete that lets you configure a schedule for deleting files in a particular folder. I’ve already written two detailed guides on using the program (here and here), so check those out if you prefer a freeware program to get the job done.
The second method for deleting files is to create a batch file and then schedule that batch file to run. You can do all of that without installing any third-party software. In this article, I’ll walk you through the steps for creating a batch file and then using Task Scheduler to have the script run on a reoccurring basis.
Step 1 – Create Batch File
If creating a batch file sounds a bit scary or too technical, don’t worry because you don’t have to know what any of that means. I’ll explain what you need to copy and paste, where and what options you can change. First, open Notepad and copy and paste the following line of text:
forfiles -p "C:\Test" -s -m *.* /D -5 /C "cmd /c del @path"
The line above probably makes no sense, which is perfectly fine as I’ll explain it down below. Basically, it tells Windows to delete all files in the C:\Test folder and sub-folders that are older than 5 days. Here is what your Notepad file should look like.
Before we get into more details about the command, let’s save the file and give it a test run. First, create a folder on your computer called Test at the root of the C drive. Next, click File – Save and save the file as a batch file. To do that, type in a name followed by .bat and then change the Save as type dropdown to All Files.
Note that you can save the file to whichever location on the hard drive you like, it doesn’t really matter. Now create some dummy files in the Test folder and then double click on the Delete.bat file to run it. Anything get deleted? Probably not!
The reason why nothing was deleted is because the command has /D -5, which means files that are 5 days or older. In order to delete any file regardless of when it was created, you can either change the -5 to -0 or you can remove the /D -5 part altogether. Now if you run it, all the files will be deleted.
To customize the command, the first thing you can do is change the directory to something other than C:\Test. That’s as simple as copying the path from Windows Explorer for the directory you want and pasting it into the command in Notepad.
Next is the -s parameter that you see after the directory path. This indicates that the command should look into all sub-folders also. If you do not want to delete files from subfolders, go ahead and remove the -s parameter.
Next is -m followed by *.*, which means that the command should evaluate files of every kind. If you only want to delete a specific file type in a folder, like PDF files or JPG images, just change *.* to *.pdf or *.jpeg and it will only remove those files.
The /D -X part we already talked about in terms of how old the files have to be in order to qualify for deletion. You can either keep it with a value greater than 1, set it to 0, or remove it altogether. That’s about all we need to know about the command.
There are a few things to note about running this command. Firstly, when files are deleted, they do not go to the Recycle Bin, but instead are deleted permanently, so be careful when using it. Secondly, the command only deletes files, not folders.
Since this is a batch file, you could also add multiples versions of this command in the same file. For example, here I am creating a batch file that will delete all DOCX files older than 180 days, all PDF files older than 60 days and all TXT files regardless of how old the files are.
Step 2 – Schedule Batch File
Now that you have your batch file created and saved, let’s go ahead and schedule it to run on a reoccurring basis. To do this, we have to open up Task Scheduler.
Luckily, I’ve already written an article on how to schedule a batch file, so open that page to get started. Scroll down to the Schedule Batch File on PC Startup section and follow along.
The only thing you have to change is the Trigger. You can choose from Daily, Weekly, Monthly, When the computer starts, When I log on or When a specific event is logged.
When you pick something like Weekly or Monthly and click Next, you’ll get a new screen where you can configure the exact time and days you want the script to run.
Hopefully, this is a good solution for most people who need to perform some simple automated tasks for deleting files on their PCs. If you have any questions, feel free to post a comment. Enjoy!