Войти

Показать полную графическую версию : Скрипт поиска и удаления файлов и папок с длиной пути больше 256 символов


Alex007
01-12-2014, 11:37
Есть расшаренная папка. В ней вложенные папки куда сотрудники складывают свои материалы необходимые для совместной работы. Папка должна периодически архивироваться. Бэкап происходит ночью по расписанию. Естественно сотрудников предупредили чтобы не плодили папок с большим количеством вложений и длинными именами файлов. Но это все же случается. Так вот хотелось бы написать скрипт, который будет сканировать папку проверяя длину путей и, в случае превышения автоматически их удалял. Что удалось нарыть:

собирает все содержимое каталога в файл:

dir /s /b > out.txt

удаление каталогов с ЛЮБОЙ ДЛИННОЙ ПУТИ:
Cmd /C "rmdir /S /Q $myDir"

Осталось самое главное. Получить длину пути и передать команде на удаление. Есть идеи?

Iska
01-12-2014, 12:11
Alex007, что за ПО Вы используете, которое имеет такое ограничение на длину пути?

Georgio
01-12-2014, 18:44
собирает все содержимое каталога в файл:

dir /s /b > out.txt »


Нет, не всё: Имя папки <...> слишком длинно.



удаление каталогов с ЛЮБОЙ ДЛИННОЙ ПУТИ:
Cmd /C "rmdir /S /Q $myDir" »


Нет, не с любой длиной пути: Путь <...> слишком длинный.



Alex007, что за ПО Вы используете, которое имеет такое ограничение на длину пути? »


Действительно интересно, поскольку robocopy <источник> <назначение> /dcopy:t /e,
и никаких проблем с длинными путями.




© OSzone.net 2001-2012