Você pode canalizar find
de saída em um loop que faz uma pausa ocasionalmente.
Eu tenho um script que basicamente faz isso que eu não tenho acesso no momento, mas seria algo semelhante a:
i=0
find $ORIGIN_PATH -type f -print | \
IFS="" while read filename; do
i=$(($i + 1))
rm "$filename" &>/dev/null
if test "$i" -gt 100; then
sleep 15
i=0
fi
done
O texto acima excluirá 100 arquivos (buscando recursivamente a partir do caminho de origem fornecido), depois suspenderá por 15 segundos, depois excluirá outros 100 arquivos, depois dormirá novamente e assim por diante. Ajuste a contagem e o período de sono conforme desejado.
Como indicado, o acima não é provavelmente exótico-nome do arquivo-safe. No entanto, deve dar-lhe a idéia geral de uma possível abordagem para uma exclusão lenta sem precisar recorrer a um software especializado.