2014-02-05 4 views
2

Я обнаружил на одном из моих серверов бесконечную последовательность пустых подкаталогов. Я пробовал:Удаление бесконечных вложенных каталогов

rm -Rf <dir> 

Тогда

find . -name /<dir>/* -exec rm -f {} \; 

и в конечном счете

rsync -a --delete /emptydir/* /<dir>/* 

Но ни один из них не вышло. У кого-нибудь есть идея?

Большое спасибо.

PS: только так вы знаете, я попробовал команду «найти» с «mindepth» аргументом, и я до сих пор что-то после 8000 подкаталогов ...

+0

Должно быть 'rm -rf DIR', а не капитала R – BMW

+2

@BMW и' -r' и '-R' разрешены и означают то же самое – hek2mgl

+0

@otanein, какой выход, а затем запустить rm -Rf? – BMW

ответ

1

Там не может быть неопределенной Петля подразделов, если это директории вы игнорируете символические ссылки. Думаю, вы жертва символических ссылок.

Поэтому используйте следующую команду, то это будет только найти каталоги не символические ссылки:

find -type d -exec rm -rf {} \; 
+0

Он висит как rm – otanein

+0

Подождите, пока он будет готов. Вы можете видеть, действительно ли он висит с помощью 'strace'. Я не верю в это, или, по крайней мере, я не ожидаю, что «найдет» вопрос – hek2mgl

0

Вы можете удалить каталоги в глубине:

find . -depth -type d -exec rm -rf {} \; 

find не следует символическим ссылкам, по умолчанию.

+0

Он висит как rm – otanein

Смежные вопросы