Поиск пустых каталогов в TC?
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Общие вопросы

#1: Поиск пустых каталогов в TC? Author: q_w_p PostPosted: Thu Dec 23, 2004 18:29
    —
При синхронизации папок часто возникает ситуация, когда нужно в одном месте удалить файлы, но при этом ТС не удаляет каталоги, в которых находились эти файлы.

Вопрос следующий: возможен ли поиск только пустых каталогов в TC встроенными функциями (alt+F7) или через дополнительные модули?
На предмет их дальнейшего анализа.

#2:  Author: Ergo PostPosted: Thu Dec 23, 2004 19:19
    —
q_w_p
Quote:
Вопрос следующий: возможен ли поиск только пустых каталогов в TC встроенными функциями (alt+F7) или через дополнительные модули?


Можно будет в Total Commander 6.5:

#3:  Author: q_w_p PostPosted: Thu Dec 23, 2004 20:56
    —
Понятно. Остается ждать.

#4:  Author: q_w_p PostPosted: Thu Jan 20, 2005 19:14
    —
Ну и где его взять это плугин dirsize ?

#5:  Author: Leshiy PostPosted: Thu Jan 20, 2005 20:52
    —
http://wincmd.ru/plugring/dirsizecalc.html

#6:  Author: q_w_p PostPosted: Fri Jan 21, 2005 13:47
    —
Так он еще и файлы мне ишет - нах это надо ?

#7:  Author: Leshiy PostPosted: Fri Jan 21, 2005 14:09
    —
q_w_p
Quote:
Так он еще и файлы мне ишет - нах это надо ?

ну не обязательно же делать как на скриншоте у Ergo (используя поле SizeBackground... тогда влезут файлы нулевого размера), подключи мозг... используй поле FileCount(Background).

Добавлено:
ещё для поиска пустых каталогов можно использовать плагин FileX - ftp://ftp1.mgpsoft.com/FileX14.zip
и искать по его полю EmptyDir

#8:  Author: CaptainFlintLocation: Москва PostPosted: Fri Jan 21, 2005 16:07
    —
А про вторую вкладку забыли? Где можно выставить атрибут "Каталог" Smile

#9:  Author: Leshiy PostPosted: Fri Jan 21, 2005 16:26
    —
CaptainFlint
Quote:
А про вторую вкладку забыли? Где можно выставить атрибут "Каталог"
никто не забыт, ничто не забыто! Smile
без контентного плагина этой галкой необходимого результата же не получить.

#10:  Author: Ergo PostPosted: Fri Jan 21, 2005 16:33
    —
Quote:
ну не обязательно же делать как на скриншоте у Ergo (используя поле SizeBackground... тогда влезут файлы нулевого размера), подключи мозг... используй поле FileCount(Background).

Когда делался скриншот FileCount еще не было Smile
Прикольно, после выхода Total Commander 6.5 есть уже три способа находить пустые директории Smile

#11:  Author: hoopoe PostPosted: Fri Jan 21, 2005 17:04
    —
епппрррр.... а тормозит-то как....

#12:  Author: CaptainFlintLocation: Москва PostPosted: Fri Jan 21, 2005 17:15
    —
Leshiy
Quote:
без контентного плагина этой галкой необходимого результата же не получить.

Так я и не говорил, что без плагина Smile Мой пост относился к дискусии, начатой фразой q_w_p:
Quote:
Так он еще и файлы мне ишет - нах это надо ?

#13:  Author: q_w_p PostPosted: Sat Jan 22, 2005 15:01
    —
Ок. Всем спасибо. FileX идеальное решение!
Есть предложение поместить его сюда:
http://wincmd.ru/directory/content.html

#14:  Author: VolniyLocation: Местный PostPosted: Sat Jan 22, 2005 21:55
    —
Альтернатива со старого форума (цитирую себя, любимого Smile ).
Code:
Скрипт удаляет пустые папки внутри текущей директории и во всех вложенных в нее. А если текущая будет корневой - во всем диске тогда. В параметрах кнопки для этого скрипта поставьте "%P"

'======= DelEmtySubDirs.vbs =======

' ©2004, Volniy

Option Explicit
Dim fso
Dim StartFolder
Dim objArgs

Set objArgs = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")

If objArgs.Count = 1 Then
' Текущая директория, получаем через %P в командной строке
StartFolder = objArgs(0)
Else
MsgBox "Должен быть один параметр!", vbCritical
WScript.Quit
End If

'Можно указать начальную папку и напрямую
'StartFolder = "D:\"

If fso.FolderExists(StartFolder) = False Then
MsgBox "Неверная директория!", vbCritical
WScript.Quit
End If

ScanFolder StartFolder

MsgBox "Пустые папки в '" & StartFolder & "' удалены!", vbInformation

Set fso = Nothing
Set objArgs = Nothing

WScript.Quit

Sub ScanFolder(FolderPath)
Dim curFolder
Dim FItem
Set curFolder = fso.GetFolder(FolderPath)
For Each FItem In curFolder.SubFolders
ScanFolder FItem.Path
Next
' Проверка на условие для удаления
If curFolder.SubFolders.Count = 0 And curFolder.Files.Count = 0 Then
curFolder.Delete
End If
Set curFolder =Nothing
End Sub
'======= DelEmtySubDirs.vbs =======



Total Commander -> Общие вопросы


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group