Консольный инструмент Byenow — ускоряем удаление больших папок в два раза

Даже на быстрых SSD-дисках удаление каталогов может занять довольно много времени, если их содержимое будет представлено множеством небольших файлов. Удаление через Проводник, в том числе с использованием Shift + Del — не самый лучший вариант, поскольку перед удалением, впрочем, как и перед копированием, Windows производит расчет и только потом приступает к основной процедуре. Кто-то наверняка скажет, что в таких случаях можно воспользоваться командой rmdir.

Да, такой способ действительно может ускорить удаление, но и это еще не предел.

Задействовав все возможности многопоточности и NtDeleteFile вместо стандартного API DeleteFile, можно сократить количество системных вызовов и ускорить удаление файлов примерно в два раза. Именно такие механизмы использует бесплатная утилита Byenow.

Скачать ее вы можете с сайта: https://iobureau.com/byenow/

Это консольный инструмент, работает он из командной строки или PowerShell. Распакуйте архив с утилитой и перейдите в консоли в расположение исполняемого файла. Теперь, чтобы удалить папку, вам нужно выполнить команду следующего вида:

byenow.exe [параметры] <путь>

Всего утилитой поддерживается семь ключей:

• -p --preview — выводит содержимое каталога без удаления данных.
• -s --staged — выводит содержимое каталога, а затем удаляет его.
• -1 -- one-liner — показывает прогресс одной строкой.
• -e --list-errors — выводит ошибки по завершении операции, если таковые были.
• -y --yes — подавляет подтверждение удаления вводом Y.
• -t --thread <count> — позволяет указать число потоков.
• -n --delete-ntapi — задействует метод NtDeleteFile вместо стандартного API.

Можно обойтись и без параметров, передав утилите в качестве единственного аргумента только путь к каталогу и подтвердив удаление вводом Y, например, byenow.exe D:\Folder.

Byenow

А теперь самый главный вопрос — насколько действительно эффективнее удаление с помощью Byenow?

Для тестирования мы использовали папку с 20000 вложенными в нее пустыми каталогами, и вот какие получили результаты.

Byenow

При удалении в Проводнике на подсчет содержимого ушло 40 секунд и еще 10 секунд было потрачено на удаление.

Использование стандартной команды rmdir с ключом s позволило сократить время удаления до 19 секунд.

Наконец, время удаления посредством Byenow без параметров составило 14 секунд и с параметром -n --delete-ntapi — 12 с половиной секунд.

Byenow

Пусть это не в два раза быстрее, чем с rmdir, но то что результат оказался в целом положительным, не подлежит сомнению.

Оцените Статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Что такое папка WpSystem и можно ли ее удалить

При детальном разборе содержимого разделов иногда можно встретить папки, которых, по идее, в том расположении, ...

Как в Windows 11 добавить в меню папок опцию закрепления на панели быстрого доступа

В Windows 11 панелью быстрого доступа называется окно Проводника, которое открывается при клике по значку ...

Папка $SysReset в системном разделе Windows 10 или 11

Кроме пяти основных папок Windows, Program Files, Program Files (x86), Пользователи и PerfLogs, системный раздел ...

Для чего нужна папка $WinREAgent в Windows 11 и можно ли её удалить

Просматривая содержимое системного раздела Windows 10 или 11 с включенным отображением скрытых файлов, можно обнаружить ...

Добавить комментарий

Ваш адрес email не будет опубликован.