Usa cron para captura de pantalla en Mountain Lion

2

Quiero configurar cron para capturar el escritorio actual cada hora:

screencapture -Cd -tjpg ~/Desktop/screen-'date +"%Y%m%d-%H%M"'.jpg

Cansé este método pero parece no funciona en Mountain Lion. También probé Lingo pero sin suerte. ¿Alguna idea?

    
pregunta sparanoid 25.10.2012 - 22:33

1 respuesta

3

cron se comporta de forma un poco diferente a un mensaje estándar, por lo que no está haciendo lo que está esperando. Hay dos problemas con el comando tal como está:

  • Debido a que no analiza la variable de entorno PATH , igual que el shell, cron no sabe dónde está screencapture . Debe especificar la ruta completa, /usr/sbin/screencapture .
  • Como se indica en página man de crontab (5) , cron trata a % como un carácter de nueva línea:

      

    Los signos de porcentaje (%) en el comando, a menos que se escapen con una barra invertida (\), se cambiarán a caracteres de nueva línea, y todos los datos después del primer% se enviarán al comando como entrada estándar.

    Por lo tanto, necesitas escapar de cada % con un \ para obtener el resultado deseado.

Esta entrada crontab te dará una captura de pantalla cada hora, a la hora:

0 * * * * /usr/sbin/screencapture -Cd -tjpg ~/Desktop/screen-'date +"\%Y\%m\%d-\%H\%M"'.jpg

Cron Error Logging

Como nota aparte, si tiene problemas con cron, verifique el correo de su sistema ejecutando el comando mail en la Terminal. No es muy obvio, pero por defecto cron envía mensajes de error que pueden proporcionar un punto de partida para descubrir qué está mal.

    
respondido por el robmathers 26.10.2012 - 00:00

Lea otras preguntas en las etiquetas