|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
Удаление пустых папок02.11.2023, 14:45. Показов 3736. Ответов 40
Метки нет (Все метки)
Доброго времени суток подскажите пожалуйста скрипт для удаление пустых папок и проверку их на то что они пустые! допустим создаются папки с файлами и без, нужен скрипт который проверит что папка пуста и через 2.5 месяца ее удалит. как то так! заранее спасибо!
0
|
|
| 02.11.2023, 14:45 | |
|
Ответы с готовыми решениями:
40
Скрипт удаления пустых папок Удаление папок
|
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
|
| 02.11.2023, 14:58 | |
|
А поискать? Прямо на первой странице тема "Скрипт удаления пустых папок".
Подправить под 2.5 месяца не проблема.
1
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 02.11.2023, 15:06 [ТС] | |
|
Спасибо
0
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 14.11.2023, 08:33 [ТС] | |
|
Спасибо еще раз за скрин.Не пригодился, т.к. я его не смог прочитать даже изменить не смог что бы 2.5 месяца). Мне надо научиться этому если не затруднит ответить с чего начать. на работе попросили учить язык для писанины скриптов, я выбрал VBS.Предлогалось много но выбрал этот пока!спасибо заранее
0
|
|
|
|
||||||
| 14.11.2023, 15:16 | ||||||
1
|
||||||
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
||||||
| 14.11.2023, 16:37 | ||||||
|
Я не давал никаких скринов. Начать с азов.
Через 2.5 месяца после запуска скрипта или создания каталога? Если последнее, то правка такая:
1
|
||||||
|
|
|
| 14.11.2023, 17:54 | |
|
FlasherX, имхо, возможно надо не DateCreated а DateLastModified. Папка может быть создана очень давно, а стала пустой недавно. Но при этом Ваш алгоритм не отработает, например, на такой структуре пустых вложенных папок
MD "Z:\Box_In\Папка1\Папка2\Папка3\Папка4\П апка5" Будет удалена только последняя папка.
0
|
|
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
|||||||||||||||
| 14.11.2023, 23:08 | |||||||||||||||
|
1. Ваш алгоритм не отработает на 260+ путях. BrowseForFolder этого точно не даст. 2.
Dict.Add F.Path, Empty, в 19 строке написать Arr = Dict.Keys, а с 20 строки писать For i = Dict.Count To 2 Step -1, заменив Dict.Item(i) на Arr(i).Кстати, я ещё давно пробовал обратный цикл, но у меня на некоторых структурах были проблемы с удалением таким способом. 3.
А вот не использовать его для удаления несколько странно, ведь это увеличивает число итераций для последнего. И Folder.Path всяко проще чем inDir + "\" + Folder.Name, не так ли? Впрочем, и тут объект папки лучше для передачи в процедуру, чем полный путь, дабы в 21-22 строках не дёргать метод GetFolder по два раза за итерацию.4. В 18 и 31 строках не нужен CLng, потому что вычитание дат и так возвращает число дней в double, что при сравнении с integer даёт нужный результат. 5. Возьмите за правило при рекурсиях и больших циклах использовать Option Explicit, что в разы ускоряет доступ к объявленным переменным и созданным объектам.
0
|
|||||||||||||||
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 15.11.2023, 08:44 [ТС] | |
|
Set fso = CreateObject("Scripting.FileSystemObject ")
startFolder = "C:\111" DeleteEmptyDir startFolder Function DeleteEmptyDir(folderName) Dim folder, folderCollection, subFolder Set folder = fso.GetFolder(folderName) Set folderCollection = folder.SubFolders For Each subFolder In folderCollection DeleteEmptyDir subFolder.Path If subFolder.Size = 0 _ And DateDiff("D", Folder.DateCreated, Now()) < 30 Then subFolder.Delete true End If Next End Function А почему вот этот не работает, что делаю не так. Выразился я неправильно изначально мне нужно удалять пустые подпапки старше даты создания 2.5 месяца Добавлено через 1 минуту FlasherX, вы не давали скринов но дали ссылку куда смотреть то что на первой странице есть тема где и находится скрипт! Добавлено через 42 минуты Изначально не правильно написал.Есть папка в нее создаются папки с файлами.некоторые пустые. скринт будет работать через Effector saver(он его будет запускать) нужно просто чтоб скрипт удалял пустые подпапки старше н времени от даты создания! привел выше скрипт он удаляет почему то пустые подпапки а на возраст не смотрит.
0
|
|
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
|
| 15.11.2023, 09:48 | |
|
Spartak1211, не работает, потому что сделан с ошибками. Он удаляет не пустые подпапки, а подпапки нулевого размера, что совсем не одно и то же. К тому же прямой перебор не будет работать при рекурсии, пытаясь удалять папку, которая ещё не очищена. Если кто-то где-то предлагает код понравившегося размера, это ещё не значит, что он отработает быстрее или вообще рабочий. А рабочий приведён выше. Вот и пользуйтесь.
0
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 15.11.2023, 10:04 [ТС] | |
|
Спасибо большое. но я его сейчас попробовал выставив значение папки 10 дней пустые папки не удалило. может я что то не так сделал
Добавлено через 1 минуту я в этом честно говоря вообще ничего не понимаю только только начал изучать. а хотелось бы понять. я же его могу редактировать ваш скрипт чтобы не вылезало сообщение? Добавлено через 10 минут FlasherX, Скажите пожалуйста он удаляет как по дате создания так по дате изменения или это разницы не какой не имеет.
0
|
|
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
|
| 15.11.2023, 10:18 | |
|
Spartak1211, чтобы понять, надо изучать язык, читать справочники, литературу.
Разница дат всегда есть, выше это обсуждалось. Вы запросили ориентир на дату создания, вот я это и реализовал. Дата модификации у папки может меняться по ходу внутренних изменений в её корне. Удалять сразу по обеим датам не имеет смысла, у них разное целеполагание. Чтобы не вылезало двухсекундное сообщение, достаточно удалить 18 строку.
0
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 15.11.2023, 12:02 [ТС] | |
|
Спасибо еще раз. очень помог. Всем спасибо.
Добавлено через 59 минут А можно вообще еще 2 путя добавить, чтоб с трех папок удаляло подпапки? Добавлено через 8 минут FlasherX, Подскажите какую литературу почитать или в теме "Подскажите литературу для начинающего" все есть.где это все брать или есть это все в интернете? и сколько понадобится времени примерно чтоб писать такие скрипты?
0
|
|
|
|
||||||
| 15.11.2023, 16:52 | ||||||
Сообщение было отмечено Spartak1211 как решение
РешениеНесколько папок
0
|
||||||
|
6626 / 2257 / 346
Регистрация: 10.12.2013
Сообщений: 7,806
|
||
| 15.11.2023, 19:47 | ||
|
прекратил своё развитие в начале 21-го века ( 2010 примерно; здесь могу ошибаться ), а официально об'ьявлен устаревшим и подлежащим выпиливанию из последующих версий Windows совсем недавно, в окт. 2023. https://learn.microsoft.com/en-us/windows/whats-new/deprecated-features Знаменит тем, что долгое время ( лет 12 ) являлся единственным вменяемым средством автоматизации, всегда имевшимся на борту у разных версий данной ОС. ( Win98, XP, 2000, 7,8,10,11 ) Ни в каких других опер. средах ( DOS, OS/2, Unix/Linux/MacOS etc ) VBScript не был реализован. Стоит ли тратить время на его изучение ? - Скорее всего, да, он достаточно прост и популярен в старых версиях Windows. Какие альтернативы ? - Powershell, Python ( оба кросс-платформ, последний просто мегапопулярен, но первый исторически ориентирован на Windows и является рекомендуемым M$ современным средством автоматизации, потому что реализован не просто как скрипт. язык, а как shell - командная оболочка ) Добавлено через 53 минуты пока я тут разговаривал сам с собой, оказалось, что прошлой ночью релизнулся dotnet 8 ( .NET 8 ). и это означает, что через недельку выйдет новая версия powershell, которая едет, как верхом на лошадке, на технологии .NET и проезжает, не оглядываясь на COM-ограду, за которой уже больше 20 лет стоит маленький оловянный бюстик vbscript. и это я к тому, на какой скрипт.инструмент быстрой разработки стоит обратить внимание. нмв.
0
|
||
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
||||||||||
| 15.11.2023, 22:04 | ||||||||||
Сообщение было отмечено Spartak1211 как решение
Решение![]() Через | перечисляем:
Хочу обратить внимание, что в списке не затронуты JScript и mshta, что по сути одного поля ягоды, особенно учитывая, что JScript вообще имеет общие интерпретаторы с VBscript. Логика такой своеобразной выборки непонятна...
0
|
||||||||||
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 16.11.2023, 08:11 [ТС] | |
|
Спасибо за информацию. Буду учиться.
0
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|||||||||||
| 07.05.2024, 20:11 [ТС] | |||||||||||
|
Здравствуйте, по вашему скрипту добавил пути, когда запускаю до не удаляет папки по дате изменения может из-а того то что пути по русски?
Полный код
0
|
|||||||||||
|
6962 / 2857 / 1099
Регистрация: 06.06.2017
Сообщений: 9,694
|
|
| 07.05.2024, 20:27 | |
|
Не надо оверквотить кодом. Достаточно переменной Dirs.
Код должен быть в ANSI.
0
|
|
|
0 / 0 / 0
Регистрация: 13.07.2023
Сообщений: 36
|
|
| 07.05.2024, 20:58 [ТС] | |
|
Код и есть в ansi?
0
|
|
| 07.05.2024, 20:58 | |
|
Помогаю со студенческими работами здесь
20
Удаление папок старше N дней
Удаление пустых папок в папке, не через xcopy
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|