Когда вы удаляете огромные папки в Windows, вы заметите, что для завершения процесса требуется довольно много времени.
Я держу резервные папки локально на диске, и эти папки приближаются к 30 гигабайтам размером более 140 000 файлов и 350 папок.
Когда мне нужно удалить их снова, это займет много времени, если я запустил операцию удаления в Проводнике Windows. Первое, что происходит, — это то, что Windows запускает вычисления, которые сами по себе могут занять очень много времени.
Затем, когда происходит фактическое удаление, Windows анализирует процесс и публикует обновления в окне операции с файлом.
Для удаления большой папки с помощью проводника на устройствах Windows может потребоваться десять или двадцать минут или даже больше.
Если вы запустите команды удаления из командной строки, вы заметите, что операция выполняется намного быстрее. Вы можете заметить, что для выполнения этой операции требуется всего лишь часть времени, требуемое той же операцией при ее запуске в проводнике.
Мэтт Пилц, который писал об этом еще в 2015 году, сократил с 11 до 29 секунд, что сделало операцию командной строки более чем в 20 раз быстрее, чем удаление через «Проводник».
Недостатком этого является то, что он требует использования командной строки. Мэтт предложил добавить команды в контекстное меню Проводника, чтобы пользователи могли запускать их непосредственно в Проводнике.
Две команды, которые требуются пользователям, — это Del, для удаления файлов и Rmdir, для удаления каталогов.
- Нажмите на клавишу Windows, введите cmd.exe и выберите результат для загрузки командной строки.
- Перейдите в папку, которую вы хотите удалить (со всеми ее файлами и подпапками). Для этого используйте cd-путь, например
cd o:\backups\test\
- Команда
DEL /F/Q/S *.* > NUL
удаляет все файлы в этой структуре папок и опускает вывод, который улучшает процесс дальше. - Используйте cd .. для перехода к родительской папке.
- Запустите команду имя файла
RMDIR / Q / S
, чтобы удалить папку и все ее подпапки. - Командам может потребоваться некоторое объяснение.
DEL /F/Q/S *.* > NUL
- /F — принудительно удаляет файлы только для чтения.
- /Q — включение тихого режима. Вы не спрашиваете, нормально ли удалять файлы (если вы этого не используете, вас спрашивают о любом файле в папке).
- /S — запускает команду для всех файлов в любой папке в выбранной структуре.
- *.* — удалить все файлы.
- > NUL — отключает вывод консоли. Это улучшает процесс, сокращая примерно четверть времени обработки команды консоли.
RMDIR /Q/S имя_папки
- /Q — Тихий режим не будет запрашивать подтверждение для удаления папок.
- /S — Запустите операцию во всех папках выбранного пути.
- имя_папки — абсолютный путь или относительное имя папки, например o:/backup/test1 или test1
Создание командного файла и добавление его в контекстное меню Проводника
Если вам не нужно часто запускать команду, вы можете отлично выполнять команды непосредственно из командной строки.
Однако, если вы часто используете его, вы можете оптимизировать процесс. Вы можете добавить команду в контекстное меню Проводника, чтобы вы могли запускать ее непосредственно там.
Первое, что вам нужно сделать, это создать пакетный файл. Создайте новый текстовый документ в Windows и вставьте в него следующие строки кода.
@ECHO OFF ECHO Delete Folder: %CD%? PAUSE SET FOLDER=%CD% CD / DEL /F/Q/S "%FOLDER%" > NUL RMDIR /Q/S "%FOLDER%" EXIT
Сохраните файл как delete.bat впоследствии. Убедитесь, что он имеет расширение .bat, а не расширение .txt.
В пакетном файле содержится запрос безопасности. Это дает вам возможность остановить процесс, что важно, если вы случайно выбрали пункт контекстного меню. Вы можете использовать CTRL-C или щелкнуть по x окна, чтобы остановить процесс. Если вы нажмете любую другую клавишу, все папки и файлы будут удалены без какой-либо опции, чтобы остановить процесс.
Вам нужно добавить командный файл в место, которое является переменной окружения PATH. Хотя вы можете создать свою собственную переменную, вы также можете перенести ее в папку, которая уже поддерживается, например C:\Windows.
Выполните следующие действия, чтобы добавить новый пакетный файл для быстрого удаления папок в контекстном меню Проводника Windows.
- Нажмите на клавишу Windows, введите regedit.exe и нажмите клавишу Enter, чтобы открыть редактор реестра Windows.
- Подтвердите приглашение UAC.
- Перейдите в HKEY_CLASSES_ROOT\Directory\shell\
- Щелкните правой кнопкой мыши на оболочке и выберите «Создать»> «Ключ».
- Назовите кнопку «Fast Delete»
- Щелкните правой кнопкой мыши на «Быстрое удаление» и выберите «Создать»> «Ключ».
- Назовите команду ключа.
- Дважды щелкните по умолчанию по команде.
- Добавьте значение
cmd /c "cd %1 && delete.bat"
в качестве значения.
Спасибо!
«Хотя вы можете создать свою собственную переменную»
Подскажите а как ее создать. В C:\Windows боязно ложить такой файл, и еще, если сможете
помочь. Я пользуюсь прогой, Classic Shell. На панели инструментов, который отображаются
в папке, кнопки выполняют команды именно в ней, пример редактирования:
Команда: «%SystemDrive%\Program Files\Classic Shell\nowtex.bat» Мой батник.
Ссылка: %windir%\system32\notepad.exe Создание текстового документа
Можно ли ее сюда запихнуть. Спасибо.
Вот бы эту статью на первое, заслуженное место в гугле. Благодарю!
Total commander удаляет еще быстрее))
Проверено.