Imagina que tus copias de seguridad se hacen solas a las 3 de la mañana, que tu sistema se limpia de archivos temporales cada domingo o que tu script de Python favorito se ejecuta cada hora sin que tengas que mover un dedo.
En el mundo Unix (Linux y macOS), esto se logra con Cron, un servicio que funciona como un "reloj despertador" para comandos.
1. ¿QuĂ© es el Crontab?
El archivo crontab es una lista de comandos con un horario asignado. Para ver o editar tus tareas programadas, solo tienes que usar el comando:
crontab -e
(Si es la primera vez que lo abres, elige tu editor favorito, como nano).
2. El cĂłdigo secreto: Las 5 estrellas
Cada lĂnea en un crontab tiene una estructura de 5 columnas seguidas del comando. Es el famoso formato:
* * * * * comando_a_ejecutar
¿QuĂ© significa cada estrella?
Minuto (0-59)
Hora (0-23)
DĂa del mes (1-31)
Mes (1-12)
DĂa de la semana (0-6, donde 0 es domingo)
3. Ejemplos prácticos para tu dĂa a dĂa
A. Reiniciar el router o limpiar caché cada medianoche
0 0 * * * /ruta/al/script/limpieza.sh
B. Ejecutar un backup todos los lunes a las 8:00 AM
0 8 * * 1 /usr/bin/python3 /home/usuario/backup.py
C. El comando "Cada 15 minutos"
*/15 * * * * /usr/local/bin/check_server.sh
Tip Pro: Si la sintaxis de las estrellas te resulta confusa, usa la web
Crontab.guru . Es un editor visual que te dice exactamente qué estás programando en tiempo real.
4. Errores comunes que debes evitar
Rutas absolutas: Cron no sabe dónde están tus programas. En lugar de poner
python3 script.py, usa la ruta completa:/usr/bin/python3 /home/usuario/script.py.Permisos: AsegĂşrate de que tu script tenga permisos de ejecuciĂłn (
chmod +x script.sh).Silencio absoluto: Cron no tiene pantalla. Si tu script imprime algo, no lo verás. Es mejor redirigir la salida a un archivo log para revisarlo después:
0 0 * * * /scripts/tarea.sh >> /home/usuario/logs/tarea.log 2>&1
5. Alternativa para macOS: launchd
Aunque macOS soporta Cron, Apple prefiere usar launchd. Sin embargo, para la mayorĂa de usuarios y tareas simples, Cron sigue siendo el mĂ©todo más rápido y compatible de configurar.
ConclusiĂłn
Aprender a programar tareas es lo que separa a un usuario avanzado de un profesional de la tecnologĂa. Es delegar las tareas aburridas y repetitivas a la máquina, permitiĂ©ndote a ti centrarte en lo que realmente importa: crear y experimentar.
¿QuĂ© tarea te gustarĂa automatizar hoy mismo? ¡CuĂ©ntanos tu idea en los comentarios y te ayudaremos con la sintaxis de las estrellas!
No hay comentarios:
Publicar un comentario