11 votos

¿Cómo puedo configurar mi ordenador para que ejecute un AppleScript a una hora determinada? Advertencia: sin utilizar iCal

Desde que actualicé a Lion, he notado una ligera disminución de la productividad a la hora de utilizar iCal. Como resultado, estoy probando alternativas como BusyCal. La aplicación parece genial, sin embargo no puedo establecer una alarma para ejecutar un script como podía hacer en iCal.

Por lo tanto, quiero independizarme de iCal y tener un AppleScript que se ejecute todos los días sin tener que mantener iCal en ejecución. ¿Alguna idea de cómo hacerlo?

14voto

Julius Canute Puntos 26

Puede ejecutar un cronjob utilizando crontab.
Básicamente, para ejecutar un cronjob, deberá escribir nano ~/crontab en Terminal. Esto creará un nuevo archivo llamado "crontab" en su carpeta de inicio, y abrirá un editor de texto simple en Terminal. Escriba:

* * * * * osascript ~/Desktop/theScriptToBeExecuted.applescript

Esto ejecutará un AppleScript llamado "theScriptToBeExecuted.applescript" ubicado en tu escritorio, cada minuto. Los cinco "*" antes del osascript especifique la hora. Aquí hay una tabla para mostrar lo que significa cada campo:

\*     \*     \*   \*    \*        command to be executed
-     -     -   -    -
|     |     |   |    |
|     |     |   |    +----- day of week (0 - 6) (Sunday=0)
|     |     |   +------- month (1 - 12)
|     |     +--------- day of        month (1 - 31)
|     +----------- hour (0 - 23)
+------------- min (0 - 59)

Así que para ejecutar el mismo comando un minuto después de medianoche (00:01) de cada día del mes, de cada día de la semana, escriba esto en el archivo:

1 0 * * * osascript ~/Desktop/theScriptToBeExecuted.applescript

Si necesita más información, consulte este artículo sobre cron.

Para guardar el archivo en el que está trabajando, escriba Control + X (sale), entonces Y (indica al Terminal que desea guardar el archivo), y a continuación Enter Ahora escriba en el prompt cron ~/crontab Esto le dice a cron que debe buscar en el archivo crontab, si su archivo se llama "crontab" en su carpeta de inicio.

Otra alternativa es Cronnix Es una GUI para crontab.

script Timer es similar, pero ejecuta AppleScripts especificados en momentos determinados. Es un poco más fácil de usar, pero cuesta $ 12. Yo recomendaría simplemente ir con Cronnix (gratis) o crontab (¡también gratis!)

3voto

Romme Puntos 787

En versiones recientes de OS X launchd es preferible a cron . He aquí un extracto de man crontab bajo los Mavericks:

Nota para Darwin: Aunque cron(8) y crontab(5) están soportados oficialmente en Darwin, su funcionalidad ha sido absorbida por launchd(8), que proporciona una forma más flexible de ejecutar comandos automáticamente.

Puede controlar launchd utilizando el launchctl pero mucha gente (incluido yo) utiliza una GUI llamada Lingon .

ACTUALIZACIÓN: Ahora utilizo LaunchControl en lugar de Lingon. Es mucho más potente, aunque la interfaz es más complicada.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X