Что нового

[Автоматизация] удаление пустых папок

rizovrn

Новичок
Сообщения
3
Репутация
2
Скрипт для зачистки пустых папок
(в данном примере внутри каталога DATA)

Код:
#Include <File.au3>
$sRoot = "E:\DATA"
ProgressOn ("Поиск пустых папок", "Подготовка к поиску...")
Global $iCNT = 0, $iDEL = 0, $aRoot = DirGetSize($sRoot, 1)
$aRoot[2]+=1
_DirRemoveEmpty($sRoot)
ProgressOff()
MsgBox(64, "Поиск пустых папок", "Поиск завершен"&@CRLF&@CRLF&"Папок ВСЕГО: "&@TAB&$iCNT&@CRLF&"удалено: "&@TAB&$iDEL)
Func _DirRemoveEmpty($sDIR)
    Local $iPRC, $aDIR = _FileListToArray($sDIR,'*', 2)
    If IsArray($aDIR) Then
        For $i=1 To $aDIR[0]
            $iDEL += _DirRemoveEmpty($sDIR &"\"& $aDIR[$i])
        Next
    EndIf
    $iCNT +=1
    $iPRC = Int($iCNT*100/$aRoot[2])
    ProgressSet($iPRC, "Обработано папок: "&$iCNT&@TAB&@TAB&" Удалено: "&$iDEL, $sDIR)
    If DirGetSize($sDIR)=0 Then $iDEL += DirRemove ($sDIR)
EndFunc


Источник: Как программно удалить пустые папки ?
 
Автор
R

rizovrn

Новичок
Сообщения
3
Репутация
2
да, решил в полезняшки положить :blink:
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Для справки. В WinAPIEx.au3 есть довольно полезная функция - _WinAPI_PathIsDirectoryEmpty().
 

xklx

Новичок
Сообщения
50
Репутация
3
Помоему нехватает сообщения какие папки были удалены :smile:
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
так как есть ссылка на эту тему, то
в справке есть пример
_FO_SearchEmptyFolders
 
Верх