Iterando archivos en una carpeta con carpetas anidadas - Cocoa

Necesito acceder a todos los archivos de una carpeta, incluidos los archivos que existen dentro de las carpetas anidadas. Una carpeta de ejemplo podría verse así.

animals/
 -k.txt
 -d.jpg
 cat/
   -r.txt
   -z.jpg
   tiger/
      -a.jpg
      -p.pdf
 dog/
   -n.txt
   -f.jpg
 -p.pdf

Diga que quería ejecutar un proceso en cada archivo dentro de "animales" que no sea una carpeta. ¿Cuál sería la mejor manera de recorrer en iteración la carpeta "animales" y todas sus subcarpetas para acceder a cada archivo?

Gracias

Respuestas a la pregunta(5)

Su respuesta a la pregunta