8

Я запустил скрипт узла, который вышел из строя и создал структуру папок примерно так:

\myfolder
    \myfolder
    \file.txt
        \myfolder
            \file.txt
                \myfolder
                \file.txt
                    \etc.

Я бы посчитал, что он вложен более чем в 300 раз, если не больше.

Я не могу del его, потому что это слишком длинный путь к файлу.

Я не могу использовать robocopy потому что он на самом деле зависает в этой точке:

Я не могу использовать FileAssassin поскольку это только для файлов, по-видимому.

Я попытался использовать сценарий .bat из этого ответа. Как удалить папку, которая вложена достаточно глубоко и избежать "Имя файла слишком длинное"? и он все еще работает, но на уровне рекурсии я боюсь, что папка находится на том же уровне, даже если каждая подпапка была переименована в один символ, она все равно будет длиннее 260 (или любого другого ограничения).

Как мне удалить эту problem из моей файловой системы?

РЕДАКТИРОВАТЬ

DeepRemove успешно! Победа! 3421 уровень рекурсии. Джееш! Я буду более осторожен с nodejs (или любой программной модификацией файловой системы), esp. когда рекурсия задействована!

2 ответа2

8

Я не пробовал это программное обеспечение, но вы можете просмотреть его и попробовать.

https://deepremove.codeplex.com/

Удачи.

1

Для потомков я делюсь решением SiloSix.

Он создал файл bat, чтобы перемещать структуру папок и удалять небольшие фрагменты за раз. Это просто и красиво. (У меня также было несколько тысяч папок.)

Это сработало над моей проблемой менее чем за 2 минуты.

REM https://superuser.com/users/151251/silosix
D:

REM  CD deep into the problem directory...
cd D:\a\calculator.sikuli\calculator.sikuli\calculator.sikuli\calculator.sikuli

REM Move the rest of the problem dir to a temporary parent folder
move /-Y calculator.sikuli D:\b

REM CD to the temp folder
cd D:\b

REM delete the section of problem-dir above
rd /s/q D:\a\calculator.sikuli

REM Move the rest of problem-dir back to origin
move /-Y calculator.sikuli D:\a

REM Call the script until problem directory is gone!
call D:\remdirs2.bat

Теги REM - это просто комментарии, их можно оставлять или вынимать по своему усмотрению. (В случае, если следующий человек найдет это, не разбирается в написании сценариев с битами).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .