Cómo forzar launchd para no mirar subcarpetas con el parámetro QueueDirectories en launchd.plist

0

Estoy procesando las imágenes puestas en una carpeta específica.

Para eso ejecuto el script con launchd.plist puesto en ~/Library/LaunchAgents
Todo funciona sin problemas. Pero quiero poner los archivos resultantes en la subcarpeta de esa carpeta.
La carpeta no está vacía, tiene subcarpetas, por lo que mi script se ejecuta una y otra vez cada 10 segundos.
No hay nada que procesar. Pero launchd ejecuta el script diez veces por minuto desperdiciando recursos. ¿Cómo puedo ocultar las subcarpetas launchd en las carpetas del parámetro QueueDirectories ?
Los nombres de archivo son arbitrarios, por lo que no puedo usar el parámetro WatchPaths .
Creo que un parámetro como maxdepth debería existir.

¿Alguna solución?

    
pregunta Valeriy Van 21.09.2012 - 15:55

1 respuesta

1

QueueDirectories no funcionará de todos modos, ya que se activaría en los subdirectorios si tuvieran o no algún archivo en ellos. La mera existencia de subdirectorios en los directorios observados activará el script.

En su lugar, debe usar WatchPaths en el propio directorio principal: cada vez que se agrega un nuevo archivo de imagen al directorio, se modifica el directorio, por lo que WatchPaths activará su secuencia de comandos para procesar el archivo. Mover el archivo de imagen volverá a modificar el directorio, pero como ocurre mientras se ejecuta la secuencia de comandos, no se activará una nueva ejecución.

    
respondido por el Gordon Davisson 21.09.2012 - 17:28

Lea otras preguntas en las etiquetas