If you've ever tried to delete a lot of files that take up a lot of disk space, you know how long this process can take. Classic deleting files in Windows can take time if those files are large. What is the best solution in that case?
Delete
This is the worst possible method in this case. This is the classic folder highlighting, right click > Delete. Or the Del key on the keyboard. Windows Explorer delete process will prepare folders and files to delete, calculate sizes, paths… simply takes too long.
Shift + Delete
A slightly faster method is this and you may have used it. It differs in that the trash can is skipped and all files disappear from the disk immediately. However, with this method, the deletion process itself takes a long time, so it is not recommended.
"Del" and "rmdir" commands
We came to the CMD command and the first one is "rmdir" in combination with the flags /s and /q. So, the command would now go like this:
rmdir /s/q foldername
The second command is "del" in combination with "rmdir". First use "del" to remove all files within the folder, then "rmdir" to remove the folder structure:
del /f/s/q foldername > null rmdir /s/q foldername
From the tags we have:
- / Q - Quiet mode: the computer will not ask us for each file if we are sure we want to delete it
- / S - executes the command for each file and folder below the selected one
- / F - delete read-only files
- > null - output goes to null which means it will not show it to us, saving time
This method is significantly faster than the classic "rmdir" for removing files and folders together.
The test was done on 960 sample files, 5.85MB each in 303 folders and these are the results:
- First method: 14.98 seconds average
- Second method: 12.82 seconds average
You may not notice the difference, it's only 2 seconds, but here are the results for 1,159,211 files whose size is 28.3GB in 146,918 folders:
- First method: 2 hours and 25 minutes on average
- Second method: 53 minutes on average
The difference, as you can see, is huge! (source)
Create a quick delete shortcut
Ok, once we've found that the second method with "del" plus "rmdir" is the best, we'll create a batch file and integrate it into the context menu (the menu that appears when you right-click a folder) so we don't have to manually type in CMD each put command.
1) Open Notepad and paste this script:
@ECHO OFF ECHO Delete folder: %CD%? PAUSE SET FOLDER=%CD% CD / DEL /F/Q/S "%FOLDER%" > NUL RMDIR /Q/S "%FOLDER%" EXIT
and save in C:\Windows as e.g. "Fastdel.bat". Be careful not to save it as .txt! Select "All files" below the file name and manually enter .bat at the end of the file name.
2) Open RegEdit
Press Windows + R to display the RUN window and type regedit then click ok.
3) Add a script to Regedit
- Go to this path: HKEY_CLASSES_ROOT\Directory\shell\
- Right-click on the "shell" and then New > Key
- Put Fast Delete after the name
- Right-click on Fast Delete and New > Key
- Add a name: command
-
Double click on the default key (located on the right) and for the
value put:
cmd /c "cd %1 && Fastdel.bat"
- Restart the Windows Explorer process from Task Manager
4) Test
Right-click on a folder you want to delete with this method and select "Fast Delete".
A CMD will appear asking "Delete folder: path/to/folder?“ And just press any key to confirm (say enter).
If you accidentally click Fast Delete, then you can cancel by pressing ctrl + c when it asks you if you want to delete the this-and-that folder, the script is aborted.
Comments
Post a Comment