Автор Тема: Чем удалить непустой каталог?  (Прочитано 3065 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Дерево познания

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://issat.net
Чем удалить непустой каталог?
« : 01 Октября 2003, 00:47:41 »
Модуль подскажите? Чтобы каталог удалить.

use File::Remove qw(remove);

remove "название каталога";

не работает %(

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
Чем удалить непустой каталог?
« Ответ #1 : 01 Октября 2003, 10:21:29 »
use File::Path;

rmtree("path/to/dir");

Но в данной функции может сработать команда die.
Чтобы это блокировать используй:

eval { rmtree("path/to/dir") } && print "Каталог ликвидирован\\n";
« Последнее редактирование: 01 Октября 2003, 12:01:13 от ondr »
0 OK, 0:1

Оффлайн vladsu

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 271
  • +0/-0
  • 0
    • Просмотр профиля
    • http://vladislavsurguchev.eu/
Чем удалить непустой каталог?
« Ответ #2 : 01 Октября 2003, 11:30:02 »
Как вариант.

Предварительно перейдя в диру

unlink $_ while (<*>);

или что-нибудь такое

@files = grep {-f "$dir_name/$_" } readdir(DIR);
unlink $_ foreach (@files);

ЗЫ Только нужно подумать о сабдирах!
----------------------------------------------
Мой сайт чёрно-белых фотографий из разных уголков мира тут

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Чем удалить непустой каталог?
« Ответ #3 : 01 Октября 2003, 11:36:43 »
ondr
твой кусок кода с eval работает с точностью до наоборот.
А точнее сообщение неверное
The documentations is your friend

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
Чем удалить непустой каталог?
« Ответ #4 : 01 Октября 2003, 12:04:38 »
[OFF]Факир был пьян и фокус не удался.[/OFF]

NeoNox
Исправил. Исправление пометил красным.
0 OK, 0:1

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28