Launchd y Folder Actions son dos conceptos muy diferentes.
Acciones de carpeta
Las acciones de carpeta le permiten adjuntar acciones en forma de carpetas de Apple Scripts que se activan si el contenido de la carpeta cambia. Los casos de uso típicos son, por ejemplo,
- una carpeta para cargar fotos automáticamente en un sitio web
- eliminación de atributos de archivo (por ejemplo, el atributo "descargado")
- activando importación en Evernote
- etc.
launchd
launchd es una característica de todo el sistema para ejecutar y controlar tareas en segundo plano a nivel de sistema. Estos pueden ejecutarse todo el tiempo o ser activados por eventos específicos (por ejemplo, una solicitud de conexión que llega a través de IP, una carpeta cambiante, un punto específico en el tiempo, etc.). OS X hace un uso intensivo de este concepto para todo tipo de cosas, eche un vistazo a los nombres en /Library/LaunchAgents
y /Library/LaunchDaemons
para tener una idea de la funcionalidad en función de launchd.
Debido a que launchd es un servicio del sistema que se ejecuta en segundo plano todo el tiempo, el usuario no puede acceder a él directamente. Para enviar comandos a launchd, se usa el comando launchctl
.
Respuestas a preguntas específicas
- ¿Las acciones de carpeta utilizan launchd?
Probablemente no. Puede usar launchd para hacer todo lo que pueden hacer las acciones de la carpeta, pero al menos en un nivel visible para el usuario, estos son dos conceptos diferentes
- ¿Es uno más eficiente que el otro?
No hay diferencia aquí, ambos son activados por OS X bajo condiciones especiales.
- ¿Es uno más poderoso que el otro?
launchd es definitivamente más poderoso.
- ¿Se usa uno más que el otro?
En un sistema recién instalado ya hay una gran cantidad de scripts de launchd activos pero no hay acciones de carpeta. Debido a que el usuario debe activar y configurar explícitamente lo último, es probable que sea seguro suponer que launchd se usa con más frecuencia.