понедельник, 25 февраля 2008 г.

Удаление огромной кучи файлов

Если у вас есть папка, в которой БООООООЛЬШОЕ количество файлов и вы не знаете как же их удалить - делайте вот так:

find . -name '*' -print0 | xargs -0 rm

Заметку (и объяснение там же есть) взял у Эрика Лонгмана.

Фух. Записал. Теперь не забуду.

p.s.: домашнее задание - сделать то же самое для директорий

6 комментариев:

vadim комментирует...

Можно и без xargs:

find . -name '*' -exec rm {} \;

Chewie комментирует...

Такая команда должна удалить все - и файлы и папки. Я не уверен, действительно ли будут удалены под-папки, но команда указывает именно на то, что нужно удалить все.

Если же вы хотите удалить исключительно файлы, то это лучше указать явно:

find . -type f -delete

будут удалены все файлы, а иерархия под-папок будет сохранена.

kost BebiX комментирует...

vadim, myskam, спасибо огромное. Будем дальше учиться :-)

Анонимный комментирует...

На действительно больших объёмах этот способ не работает, к сожалению... у меня папка размером в 100 гигов, файлы по 5-10 килобайт... при запуске подобной команды всё виснет :(

kost BebiX комментирует...

@Vladimir если решите проблему - просьба отписаться. Я если время найду - попробую нагенерировать файлов и проверить.

HCG Diet комментирует...

пасибо огромное Я если время найду что нужно удалить все.