Однажды у меня в папке оказалось неизвестное кол-во миллионов файлов, открывалась такая папка несколько минут, rm зависал и не отвисал. Что делать?
Find Command with -exec
find /test -type f -exec rm {}
Берёт каталог test и применяет к каждому файлу rm, казалось бы это ровно то, что делает непосредственно сама rm, но работает почему-то быстрее.
Find Command with -delete
find /test -type f -delete
Берёт каталог test и применяет к каждому файлу delete, оказалось в 3 раза быстрее rm.
Ультракороткий скрипт на Perl
perl -e 'for(<*>){((stat)[9]<(unlink))}'
Самый быстрый способ в 15 раз быстрее rm, смотрите не промахнитесь с регуляркой, а то снесёте пол системы.
RSYNC with -delete
rsync -a --delete /blanktest test/
Можно просто синхронизировать пустую папку с нашим монстром при помощи rsync.
Свежие комментарии