З точки зору ефективності використання одного rm у файлі не є оптимальним, оскільки для нього потрібні fork та exec для кожного rm.
Припустимо, що у вас є list.txt, який містить файли, які ви хочете видалити, це було б більш ефективно, але все одно буде повільно:
xargs -i rm {} < list.txt
Іншим підходом було б:
nice -20 xargs -i rm {} < list.txt
(це займе менше часу, але сильно вплине на вашу систему :)
або
Я не знаю, наскільки це було б швидко, але:
mv <file-name> /dev/null
або
Створіть спеціальну точку монтажу за допомогою швидкої файлової системи (використовуючи циклічний пристрій?), Використовуйте її для зберігання та видалення величезних файлів.
(можливо, перемістіть файли туди, перш ніж видалити їх, можливо, це швидше або, можливо, просто відключіть їх, коли потрібно, щоб файли пішли)
або
cat /dev/null > /file/to/be/deleted
(тож він зараз нульового розміру), і якщо ви хочете, щоб він зник rm -rf <file>
зараз
а ще краще
кинь кішку і просто роби # > /file/to/be/emptied