Я хочу удалить все подкаталоги и файлы из каталога, но не сам каталог. Например, если я передам каталог "Образец" в переменной, а каталог "Образец" содержит три подкаталога и 3 файла, я хочу удалить все эти 3 каталога и 3 файла. На практике каталог "Образец" может содержать множество подкаталогов и файлов.
Вопрос
Удаление подкаталогов и файлов в заданном каталоге
- Используйте оболочку с командой find. Это намного проще, как один лайнер. Jasonw 17.03.2012
- @Jasonw Perl работает не только в системах UNIX... Alnitak 17.03.2012
Ответы
Ответ 1 · рейтинг 9 · TLP
ETA: На самом деле это в perlfaq5: Как удалить дерево каталогов?
Используйте File::Path, основной модуль.
perl -MFile::Path=remove_tree -we
'remove_tree("Sample",{keep_root=>1}) or die $!'
Опция keep_root заставит remove_tree сохранить верхний каталог:
keep_root => $bool
When set to a true value, will cause all files and subdirectories to be removed, except the initially specified directories. This comes in handy when cleaning out an application's scratch directory.
Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.
Похожие материалы
- Ограничение длины имени файла в bash
- Как изменить ассоциации файлов в Mac OS X
- Как ОТВЕЧАТЬ на событие щелчка по типу ввода = файлу в браузерах, отличных от IE
- Максимальный размер файла и количество пикселей для загружаемых деловых документов
- Пакетный скрипт для автоматического преобразования файлов WAV в MP3 путем обхода подкаталогов
- Изменить каталог public_html .htaccess