Перейти к содержанию

Как удалить пустые файлы (0 байт) в Windows?

Некоторые приложения создают пустые 0-байтовые файлы в своих папках данных и не могут их очистить. Если со временем вы увидите много файлов с нулевым байтом в иерархии папок, вот несколько способов найти все эти файлы с нулевым байтом и удалить их.if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-medrectangle-3-0′)};if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-box-3-0’)};

Найдите и / или удалите пустые (0 байт) файлы в Windows:

  1. с помощью утилиты «Найти пустые файлы и папки»
  2. с помощью Windows Search
  3. с помощью командной строки
  4. используя PowerShell
  5. используя VBScript
  6. используя DelEmpty.exe

Рекурсивный поиск и удаление 0-байтовых файлов в дереве папок

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

Давайте начнем с красивого стороннего бесплатного инструмента с графическим интерфейсом, а затем рассмотрим собственные методы.

1. Использование утилиты «Найти пустые файлы и папки».

Find Empty Files-n-Folders — отличный инструмент, который может рекурсивно находить и удалять пустые файлы (0-байтовые) и пустые папки в дереве папок.if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-box-4-0’)};

Загрузите «Найти пустые файлы и папки» (установщик 600 КБ) с сайта Ashisoft.com.

if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-medrectangle-4-0’)};

Выберите папку и нажмите Сканировать сейчас.

удалить пустые папки в windows

Инструмент отобразит пустые файлы и папки на отдельных вкладках.

На вкладке «Пустые файлы» нажмите «Отметить все файлы» и затем нажмите «Удалить файлы».

удалить 0-байтовые пустые файлы в windows

if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-banner-1-0’)};Точно так же, чтобы удалить 0-байтовые файлы в выбранном дереве папок, щелкните вкладку «Пустые файлы».

На Ashisoft.com есть и другие замечательные инструменты, которые вы можете попробовать!

2. Использование Windows Search

Windows Search позволяет вам перечислить все 0-байтовые файлы, используя размер: оператор запроса.

Откройте папку, в которой вы хотите найти или удалить пустые файлы.

В поле поиска введите размер: пустой или размер: 0 КБ

найти и удалить 0-байтовые файлы в windowsif(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-leader-1-0’)};

Чтобы отфильтровать результаты по расширению файла (например, файлы javascript → расширение .js ) используйте следующий синтаксис расширенного запроса (AQS):

размер: пустой И ext: js

найти и удалить 0-байтовые файлы в windows

3. Использование командной строки

Чтобы перечислить все 0-байтовые (0 КБ) файлы, представляющие собой папку и подпапки, рекурсивно и вывести имена в файл, используйте следующую команду.

Обратите внимание, что вам нужно будет запустить команду из папки, в которой вы хотите найти или удалить пустые (0 КБ) файлы.

для / r% F в (*) выполните @if% ~ zF == 0 echo "% F" >> d: \ 0byte-files.txt

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

для / r "d: \ sites"% F в (*) do @if% ~ zF == 0 echo "% F" >> d: \ 0byte-files.txt

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

Полный список выходных 0-байтовых файлов записывается в файл с именем 0byte-files.txt на D: \ водить машину.

найти и удалить 0-байтовые файлы в windows

Чтобы удалить файлы, вы должны использовать дель команда вместо эхо.

for / r% F в (*. *) do @if% ~ zF == 0 del "% F"

или укажите путь к целевой папке в самой команде:

для / r "d: \ sites"% F в (*. *) do @if% ~ zF == 0 del "% F"

Найти и удалить 0-байтовые файлы с определенным расширением.

В приведенных выше примерах вы даже можете фильтровать файлы по расширению. Например, чтобы удалить 0-байтовый .текст файлы, которые вы бы использовали *.текст вместо того *.* или *

для / r% F в (* .txt) сделать @if% ~ zF == 0 del "% F"

или с указанием пути к папке:

для / r "d: \ sites"% F в (* .txt) сделать @if% ~ zF == 0 del "% F"

Это удалило бы все пустые .текст файлы из текущей папки и подпапок или рекурсивно в указанном дереве папок.

Создать пакетный файл

Если вы хотите создать командный файл для поиска и перечисления пустых файлов и вывода результатов в текстовый файл, вот один из них:

@ эхо выключено set out = "d: \ 0byte-files.txt" для / r "% ~ 1." %% A in (*. *) Делать, если %% ~ zA == 0 echo "%% ~ fA" >>% out%

Сохраните приведенное выше содержимое как найти пустые файлы.bat.

Чтобы удалить пустые файлы вместо вывода списка файлов, используйте этот командный файл:

@ эхо выключено для / r "% ~ 1." %% A в (*. *) Делать, если %% ~ zA == 0 del "%% ~ fA"

Чтобы рекурсивно запустить пакетный файл для папки, вы должны использовать следующий синтаксис:

d: \ scripts \ find-empty-files.bat d: \ sites

Что делает вышеуказанная команда?

  • для / r% F в (*) рекурсивно выполняет итерацию файлов в указанной папке и подпапках.
  • если% ~ zF == 0 проверяет, является ли повторяемый файл 0-байтовым файлом
  • del %% ~ fA удалить 0-байтовый файл

СВЯЗАННЫЕ: Как автоматически находить и удалять пустые папки в Windows

4. Использование PowerShell

Запустите PowerShell.exe и используйте один из следующих методов:

if(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-large-mobile-banner-1-0’)};

Список пустых (0 КБ) файлов

Чтобы получить список 0-байтовых файлов в дереве папок, используйте следующий синтаксис командной строки:

Get-ChildItem -Path "D: \ sites \ test" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | Выберите -ExpandProperty FullName

Чтобы вывести список в файл:

Get-ChildItem -Path "D: \ sites" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | Выберите -ExpandProperty FullName | Set-Content -Path d: \ found.txt

найти и удалить 0-байтовые файлы в windows - powershellif(typeof __ez_fad_position!=’undefined’){__ez_fad_position(‘div-gpt-ad-winhelponline_com-large-leaderboard-2-0’)};

Чтобы вывести список в виде сетки:

Get-ChildItem -Path "D: \ sites" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | вне сетки

Чтобы перечислить только определенный тип файла (например, .bmp) :

Get-ChildItem -Path "D: \ sites" -include * .bmp -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | вне сетки

Удалить пустые (0 КБ) файлы

Чтобы удалить все 0-байтовые файлы в дереве папок, используйте этот синтаксис командной строки:

Get-ChildItem -Path "D: \ sites" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | Убрать предмет

Чтобы удалить 0-байтовые файлы с определенным расширением (например, .bmp)

Get-ChildItem -Path "D: \ sites" -include * .bmp -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -and $ _. Length -eq 0} | Убрать предмет

5. Использование VBScript

удалить 0-байтовые пустые файлы в windows - vbscriptСледующий сценарий VBScript рекурсивно очищает пустые (0-байтовые) файлы в дереве папок.

Скопируйте следующий код в Блокнот и сохраните его как del-zero-byte-files.vbs

Вариант Явный
Если (WScript.Arguments.Count <> 1) Тогда WScript.Echo ("Использование: cscript DeleteEmptyFolders.vbs {путь}") WScript.Quit (1) Конец, если
Тусклый strPath: strPath = WScript.Arguments (0) Dim fso: Set fso = CreateObject ("Scripting.FileSystemObject") Dim objFolder: установите objFolder = fso.GetFolder (strPath) Dim sDelList, sDelErr, sFilePath Dim iCnt iCnt = 0
DeleteZeroByteFiles objFolder
Sub DeleteZeroByteFiles (папка) Тусклая подпапка, файл
При ошибке Возобновить Далее 'Пропускать ошибки при доступе к узлам и т. Д. Для каждой подпапки в папке. Подпапка DeleteZeroByteFiles Следующий При ошибке Перейти к 0
Для каждого файла в папке .files Если file.size = 0 Тогда sFilePath = путь к файлу При ошибке Возобновить Далее fso.DeleteFile файл, True Если номер ошибки <> 0 Тогда sDelErr = sDelErr & Номер ошибки & ":" & Описание ошибки & _ vbCrLf и sFilePath и vbCrLf и vbCrLf Еще sDelList = sDelList & vbCrLf & sFilePath iCnt = iCnt + 1 Конец, если При ошибке Перейти к 0 Конец, если Следующий Конец подписки
Если sDelList = "" и sDelErr = "" Тогда WScript.Echo "Нет пустых файлов под" & _ "" "" & strPath & "" "" & "дерево" WScript.Quit Конец, если
Если sDelList <> "", то sDelList = "Список удаленных пустых файлов" & vbCrLf _ & String (38, "-") & vbCrLf & sDelList & vbCrLf & _ vbCrLf & "Всего:" & iCnt & "файлы удалены."
Если sDelErr <> "", то sDelErr = "Эти файлы не могут быть удалены" & _ vbCrLf & String (45, "-") & vbCrLf & sDelErr
WScript.Echo sDelList & vbCrLf & vbCrLf & sDelErr

использование

Чтобы запустить сценарий для папки, вы можете использовать wscript.exe или cscript.exe, как показано ниже:

cscript d: \ scripts \ del-zero-byte-files.vbs "d: \ проездные документы" wscript d: \ scripts \ del-zero-byte-files.vbs "d: \ проездные документы"

CScript.exe показывает вывод в окно консоли. Это означает, что вам нужно будет запустить его из окна командной строки, чтобы увидеть результат.

WScript.exe показывает результаты в графическом интерфейсе.

через меню Отправить

Вы можете создать ярлык для сценария в папке SendTo и назвать его «Удалить 0-байтовые файлы». Приставка wscript.exe в поле назначения свойств ярлыка.

удалить 0-байтовые пустые файлы в windows - vbscript

Затем щелкните правой кнопкой мыши папку, в которой вы хотите рекурсивно удалить пустые файлы в дереве папок → щелкните «Отправить» → щелкните «Удалить 0-байтовые файлы» в меню «Отправить».

Вы увидите список удаленных пустых файлов и их общее количество, а также файлы, которые не удалось удалить, с соответствующими кодами ошибок.

удалить 0-байтовые пустые файлы в windows - vbscriptСВЯЗАННЫЕ: Как автоматически удалить пустые папки в Windows

6. Использование DelEmpty.exe

DelEmpty.exe — это консольный инструмент от IntelliAdmin, который может рекурсивно удалять пустые каталоги. Эта программа также может быстро рекурсивно удалять пустые 0-байтовые файлы.

Ниже приводится синтаксис командной строки для программы:

ПАРАМЕТРЫ DelEmpty.exe [ПУТЬ]
Аргумент Описание
-f Удалить пустые (0-байтовые) файлы
-d Удалить пустые каталоги
-v Подробный режим
-c Режим подтверждения (показывает, что было удалено)
-s Включать подкаталоги (обходить подпапки)
-l Перечислите, что будет удалено (не удалит)
Удалить без запроса (да / нет)

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

DelEmpty.exe "Новая папка" -f -c -s -y -l

рекурсивно удалять пустые файлы

Приведенная выше команда показывает список пустых папок, но не удаляет их, так как -l (только список) используется переключатель.

Для имен папок, содержащих пробелы — например, Mozilla Firefox, не забудьте заключить путь в двойные кавычки.

Пример 2: Чтобы удалить пустые файлы в папке и подпапках, я запустил ту же командную строку, но без -l выключатель:

DelEmpty.exe "Новая папка" -f -c -s -y

рекурсивно удалять пустые файлы

Знаете ли вы какую-либо другую утилиту, которая может перемещаться по подпапкам и удалять пустые файлы? Дайте знать ваши комментарии.

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

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