У нас есть проблема с папкой, которая становится громоздкой с сотнями тысяч крошечных файлов.
Есть так много файлов, что выполнение rm -rfвозвращает ошибку, и вместо этого нам нужно сделать что-то вроде:
find /path/to/folder -name "filenamestart*" -type f -exec rm -f {} \;
Это работает, но очень медленно и постоянно не хватает памяти.
Есть лучший способ сделать это? В идеале я хотел бы удалить весь каталог, не заботясь о содержимом внутри него.
rm -rf?
fsckна ней, чтобы освободить неиспользуемые блоки диска, но такой подход кажется рискованным и, возможно, не будет быстрее. Кроме того, проверка файловой системы может в любом случае включать рекурсивный обход дерева файловой системы.
ccacheтакое огромное файловое дерево, и оно rmзаняло так много времени (и замедлило всю систему), стало намного быстрее копировать все другие файлы из файловой системы, форматировать и копировать их обратно. С тех пор я даю таким огромным небольшим файловым деревьям их собственную выделенную файловую систему, так что вы можете mkfsнапрямую вместо rm.
rm -rf *в папке, вероятно, происходит сбой из-за слишком большого количества аргументов; но чтоrm -rf folder/если вы все равно хотите удалить весь каталог?