Si hay un camino "correcto" desde el punto de vista de Apple, entonces es launchd
. No es que cron
está "mal" por sí mismo pero no es la forma "preferida".
Sin embargo, como ha indicado, launchd
puede ser un dolor para trabajar.
Hay dos buenas aplicaciones para probar:
-
https://www.soma-zone.com/LaunchControl/ ¹
-
https://www.peterborgapps.com/lingon/
Lingon existe desde hace mucho tiempo y es probablemente más conocido, pero yo me cambié a LaunchControl hace unos años y lo prefiero.
El promotor también mantiene https://launchd.info que es un sitio web de tutoriales muy útil para entender cómo launchd
funciona.
LaunchControl también tiene una herramienta incorporada que puede mitigar los problemas relacionados con el acceso total al disco, lo que facilita el manejo de las restricciones de MacOS.
Hay otra opción más sencilla: Maestro del teclado . Keyboard Maestro no sólo tiene una función para ejecutar scripts (o macros, etc) a una hora específica o de forma recurrente cada X minutos, sino que también puede utilizar la sintaxis del estilo de cron si quieres.
Dado que Keyboard Maestro es la mejor herramienta de automatización para el Mac, y que probablemente sacrificaría un dedo antes que verme obligado a usar un Mac sin él, puedes adivinar que recomiendo encarecidamente Keyboard Maestro. Tiene una prueba gratuita (por otras 2 semanas o 30 días, no estoy seguro, pero definitivamente es mucho tiempo) y se mantiene activamente.
¹ En el momento de escribir este artículo, tanto el sitio web de LaunchControl como el de launchd.info parecen no funcionar, lo que supongo que es sólo un fallo temporal. Anoche ya funcionaban. Si todavía está caído cuando lea esto, puede descargar una copia de la última versión (que también tiene una prueba gratuita) desde mi sitio web aquí:
https://iusethis.luo.ma/launchcontrol/LaunchControl-1.52.3.tbz2
1 votos
Apple recomienda utilizar
launchd
y aunque es un poco complicado aprenderlo de los diversos páginas del manual a su alrededor,launchctl
,launchd.plist
ylaunchd
hay aplicaciones de terceros que presentan una GUI interfaz a la misma. Uno de los que he utilizado en el pasado es Lingon Sin embargo, hay algunos más por ahí.1 votos
launchd
están sujetos a las mismas restricciones de permisos quecron
empleos (véase "Cómo ejecutar un LaunchAgent que ejecuta un script que provoca fallos debido a la Protección de Integridad del Sistema" por ejemplo). Personalmente, no veo ninguna necesidad de cambiar decron
, si es con lo que te sientes más cómodo (al menos en este momento). Pero si necesitas cambiar,launchd
es sin duda el sistema al que hay que pasarse.0 votos
Es bueno saberlo @GordonDavisson - esta pregunta en particular fue provocada por un problema con la creación de un nuevo trabajo cron que fallaba silenciosamente, dejándome adivinar cuál era la causa del fallo y sin poder descartar la Protección de Integridad del Sistema (a pesar de que un segundo trabajo cron se está ejecutando bien). Si launchd sufre el mismo tipo de problemas es bueno saberlo. Un fastidio, pero es bueno saberlo.