Как эффективно удалить более 2 000 000 файлов в одном каталоге?

Как эффективно удалить более 2 000 000 файлов в одном каталоге?

У меня более 2 000 000 (да, именно так, более 2 миллионов) файлов в папке «Временные файлы Интернета».

Эта затруднительная ситуация является результатом запланированной задачи, которая запускает скрипт. После установки Visual Studio он генерирует многочисленные файлы 'Assembly Binder Log Entry' .HTM каждый раз, когда он запускается.

Это происходит каждые 15 минут.8 месяцев. Теперь там более 2 000 000 файлов общим объемом 8 ГБ (неудивительно, что WinDirStat и Everything зависают!).


Как удалить папку, не перебирая все 2 000 000 ее содержимого?

Я попробовал открыть родительскую папку в проводнике и просто нажать клавишу Del. Затем Windows попыталась отправить 2 000 000 файлов в корзину (нет). Она так и не прошла фазу «Обнаружение элементов».

Я выбрал PowerShell ( Remove-Item 'Content.IE5'), но он пытается рекурсивно пройтись по каждому файлу и удалить их по отдельности. Хотя это, кажется, в конечном итоге сработает, я чувствую, что должен быть способ получше.

Бонусные баллы, если вы сможете мне рассказать, что такое файлы Assembly Binder Log Entry...

решение1

Согласно аналогичному вопросу от StackOverflow, есть пара вещей, которые вы можете сделать. Цитируя ответ с самым высоким рейтингом (не принятый), лучший метод выполнения такой задачи:

Лучшее, что я нашел, это двухстрочный пакетный файл с первым проходом для удаления файлов и выводом в nul, чтобы избежать накладных расходов на запись в screen для каждого отдельного файла. Затем второй проход очищает оставшуюся структуру каталогов:

> del /f/s/q foldername > nul 
> rmdir /s/q foldername

Очевидно, вам придется адаптировать этот ответ под свои конкретные цели, поскольку вы удаляете серию файлов, а не папку.

Этот пользователь предполагает (и я соглашусь), что худшим способом выполнения такой задачи будет выбрать все, а Delследующим по худшему вариантом будет выбрать все Shift+Del

Боюсь, я понятия не имею, что такое файл записи журнала.

Источник -переполнение стека

решение2

Попробуй это:

Пуск > Выполнить > cmd > перейдите в нужный каталог

оказавшись в нужном каталоге или родительском каталоге, введите del (пример) C:\Users\имя_пользователя\Desktop*desiredfile.ext

Это приведет к удалению файлов без подтверждения.

решение3

Отключите имена файлов 8+3, удалите из командной строки, снова включите 8+3. Отслеживание этого дополнительного набора имен файлов добавляет накладные расходы, как только вы преодолеете первые несколько десятков тысяч файлов.

Связанный контент