rmtree () не может удалить каталог на win32, успешно выполняется со второй попытки - PullRequest
1 голос
/ 09 февраля 2010

В Perl я делаю:

rmtree($myfolder);

Часто это не работает на Windows. Когда снова побежал, это удастся. Кажется, что как-то требуется время, чтобы удалить файлы в папке, и каким-то образом он пытается удалить папку, прежде чем файлы исчезнут.

Существует ли метод Perl "этот действительно работает" для удаления каталога со всем его содержимым в Windows?

Ответы [ 3 ]

2 голосов
/ 10 февраля 2010

@ OP, всякий раз, когда что-то происходит, всегда проверяйте, можете ли вы справиться с этими ошибками. Смотрите perldoc File :: Path . В remove_tree () вы можете использовать verbose и error => \$err, чтобы показать вам ошибки, с которыми вы столкнулись.

2 голосов
/ 10 февраля 2010

Я взял на себя и значительно улучшил File :: Remove некоторое время назад, что немного более экстремально и параноидально в отношении удаления вещей.

Это может делать то, что вы хотите.

И если это не даст мне знать, и я улучшу это.

2 голосов
/ 09 февраля 2010

У вас работает антивирусный сканер? Если он сканирует файл, файл открыт. Windows не позволит вам удалить файлы / каталоги, открытые другим процессом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...