Можно ли удалять пустые папки на системном диске Windows 10 и как это сделать

Если открыть свойства только что созданной папки и посмотреть занимаемое ею размер на диске, то Проводник сообщит, что папка не имеет размера, то есть занимает на диске 0 байт. На самом деле это не так, ведь любой объект в файловой системе — этот прежде всего запись, а запись требует места. А еще у пустой папки могут быть свои атрибуты, и их тоже нужно где-то хранить. Таким образом, папка тоже имеет вес, просто Проводник не работает на том уровне, на котором учитываются все записи об объекте.

Вот терминал Linux, например, со всей наглядностью показывает, что запись пустого каталога занимает 4096 байт.

Терминал Linux

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

Но сейчас речь не о том, как в точности измерить размер пустых папок, а что с ними делать. Можно ли их удалять и если можно, то как их найти? По идее, наличие пустых папок не должно волновать пользователя, поскольку они не оказывают влияния на производительность и вообще не мешают, если только пользователь не имеет привычки шариться по системному разделу. В установленной Windows 10 без учета программ имеется несколько сотен пустых каталогов, а если пользователь часто устанавливает и удаляет программы, количество таких пустых директорий может исчисляться тысячами.

Для чего Windows создает пустые папки

Пустые папки создаются системой на «всякий случай» для хранения временных данных и использования их встроенными компонентами. Пустые каталоги могут создаваться также сторонним программным обеспечением для временного хранения и буферизации данных.

Как получить список пустых папок в PowerShell

Получить минимальный список пустых папок вы можете с помощью PowerShell, выполнив в консоли скрипт, содержимое которого показано на скриншоте, а сам текстовый файл с кодом доступен по ссылке yadi.sk/i/ggljZ8O9bEaSyw.

$SomePath="C:\"

Get-ChildItem -Path $SomePath -Recurse -Directory | ForEach-Object -Process {

if ($false -eq $_.GetFileSystemInfos())

{

$_.FullName >> C:\log.txt

}

}

Скрипт поиска

Скопируйте код этого скрипта и вставьте в запущенную от имени администратора консоль PowerShell.

PowerShell

Если вы увидите ошибки, не пугайтесь, это нормально, просто к некоторым каталогам командная строка не может получить доступ. Если скрипт не начнет исполняться сразу, нажмите ввод.

В результате в корне системного раздела у вас будет создан файл log.txt со списком путей к пустым папкам.

Log.txt

Для поиска пустых каталогов можно использовать и такие сторонние программы как EmptyFolderNuker или Remove Empty Directories.

EmptyFolderNuker

Наиболее простой инструмент для поиска и удаления пустых каталогов.

Запустите его, укажите сканируемый диск или каталог и нажмите «Find».

EmptyFolderNuker

По завершении сканирования EmptyFolderNuker выведет список пустых папок. Список можно экспортировать в файл для последующего изучения, а можно попробовать сразу удалить все папки нажатием «Delete».

Delete

Мы пробовали и обнаружили, что система не позволяет удалять все каталоги: окошко «Подготовка к перемещению в Корзину» просто закрывается (возможно, это баг), и на этом всё заканчивается.

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

Remove Empty Directories

Хороша тем, что не только выводит список пустых каталогов, но и присваивает им метки «Удаляемые» (красный цвет), «Неудаляемые» (серый цвет) и «Защищенные» (синий цвет).

Remove Empty Directories

От предыдущего инструмента Remove Empty Directories отличается также тем, что выводит список в виде древовидной структуры. Поддерживается единичное удаление папок из контекстного меню опцией «Delete incl. all subdirectories (!)» и массовое удаление нажатием кнопки «Delete folders».

Delete folders

Удаление каталогов, владельцем которых является Система, игнорируется, а сами папки помечаются значком предупреждения.

Удаление каталогов

В настройках утилиты можно создать список исключений для папок, установить глубину рекурсии, выбрать режим удаления (в Корзину или полное удаление), установить задержку между операциями в цикле удаления и так далее.

Настройки утилиты

А вообще, лучше оставить настройки по умолчанию, если не до конца разобрались, для чего они нужны.

Примечание: в Windows 10 утилита потребует установки Microsoft.NET Framework 3.5.

FMS Empty Folder Remover

Более простая с виду утилита, чем Remove Empty Directories. Выводит в указанном расположении не только пустые папки, но и папки, которые сами содержат пустые каталоги.

FMS Empty Folder Remover

Выводит всё единым списком, кликом по выбранной папке позволяет открывать ее содержимое, работает молча, удаляя только те объекты, владельцем которых не является Система или другие важные системные службы.

Так удалять или нет

Объяснив, как находить пустые папки, мы так и не ответили на вопрос «можно ли их удалять». Можно, если вы знаете, что делаете. Например, вы деинсталлировали программу и удалили ее оставшиеся папки в Programs Files, ProgramData, %userprofile%\AppData\Local и пользовательских библиотеках.

Тестирование приведенных выше программ с удаление пустых папок на диске С (из 2240 осталось только 228 папок) не привело к видимым негативным последствиям, так как система попросту не позволила удалить защищенные каталоги. И это правильно, ведь если Windows их создала и защитила, то сделала это неспроста. Удаление этих папок вряд ли привело бы к критическому сбою, но могло бы вызвать разного рода неполадки, если только система не создала бы их автоматически при следующей загрузке и входе в учетную запись пользователя.

Ссылки на утилиты: yadi.sk/d/mwLUAd0vtaijJA

Remove Empty Directories: www.jonasjohn.de/red.htm

Empty Folder Nuker: www.softpedia.com/get/System/File-Management/Empty-Folder-Nuker.shtml

FMS Empty Folder Remover: www.filemanagersoft.com/emptyfolderremover.html

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

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (4 оценок, среднее: 5,00 из 5)
Загрузка...

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *