Comando AT
16 de abril de 2025¿Necesitas ejecutar un trabajo una vez a una hora determinada? Suena como una tarea cron. Pero cron es para ejecuciones periódicas repetidas. Para ejecutar una tarea una vez a una hora predefinida, utilice el comando "at". En este artículo, te enseñaré a utilizar el comando "at".
Instalación
Como es habitual en las distribuciones Linux, todas las aplicaciones están disponibles como un paquete listo para esa distribución Linux. Del mismo modo, el comando "at" está comúnmente disponible en el repositorio de su distribución.
En la distribución Mageia, puedes instalar el programa "at" con el siguiente comando:
urpmi at
En la distribución Debian, se instala el programa "at" con el siguiente comando:
apt-get install at
El comando "at
" se ejecuta en segundo plano, como un demonio, y ejecuta los trabajos bajo el usuario que programó el trabajo.
Por lo tanto, es necesario iniciar el demonio y habilitar el demonio "at" para que se inicie después de arrancar el ordenador.
Para ello, utilice el comando
systemctl enable etc && systemctl start etc
.
Comando at
El comando "at
" se utiliza para programar un comando o script para que se ejecute una vez en un momento específico en
futuro.
Uso Básico
Modo Interactivo
a las 16:00
A continuación, escribe los comandos y sal tecleando Ctrl+D
.
Programación de un trabajo
echo "ls -l /home/usuario" | a las 14:30
Ejecuta el comando "ls -l /home/usuario
" a las 14:30 del mismo día.
Programar el ordenador para que se apague en una fecha concreta
echo "reiniciar" | a las 23:59 31.12.2025
Mostrar tareas programadas
Si quieres comprobar qué usuario programó qué para qué hora, utiliza el siguiente comando, que listará los trabajos programados con su hora de inicio:
atq
Alternativamente, puedes usar
at -l
Cancelar un trabajo programado
Puede decidir que desea cancelar una tarea. Puede cancelar una tarea que está programada. Para eliminar una tarea programada, utilice el comando:
atrm <número de tarea>
Puede obtener el número de tarea de la sentencia atq
.
Horas especiales
at now + 1 hour
→ Ejecuta el comando en 1 hora.at now + 30 minutes
→ Ejecuta el comando en 30 minutos.a medianoche
→ Ejecuta el trabajo a medianoche.a la hora del té
→ Ejecuta el trabajo a las 4:00 pm.
Video tutorial
Vídeo demostración práctica de cómo utilizar el comando AT:
Comandos en el archivo
No tienes que introducir los comandos manualmente, sino que puedes escribir lo que necesitas ejecutar en un fichero. Y luego pasar ese archivo al programa "at". Especialmente si tienes un comando complejo o sabes que querrás ejecutarlo en algún momento en el futuro, es una buena idea escribirlo y ahorrar tiempo después.
A continuación, pasa tu script al programa "at" de la siguiente manera:
at -f config.at 13:00 2024-04-05
Cuidado con el shell por defecto
El comando "at
" le permite ejecutar tareas en un momento específico, pero es importante tener en cuenta que estas tareas
se ejecutan por defecto en un shell no interactivo (normalmente /bin/sh
u otro shell por defecto del sistema). Este
puede causar problemas si el usuario espera que se utilice su shell preferido (por ejemplo, bash
,
zsh
) o que ciertas variables de entorno estarán disponibles.
Por qué específicamente hay que tener esto en cuenta:
- Un shell distinto de su interactivo - Por ejemplo, si utiliza
bash
pero "at
" activa/bin/sh
, entonces algunas construcciones por ejemplo([ ... ]]
,declare
,source
pueden no funcionar. - Faltan variables de entorno - Una tarea ejecutada mediante
at
no tiene el mismo entorno que su shell interactivo. Por ejemplo, sus alias personalizados, funciones o modificado$PATH
. - Necesita especificar explícitamente un shell - Si desea que la tarea
at
se ejecute en un shell específico, debe especificarlo explícitamente. shell, debe especificarlo explícitamente.
Por ello, te recomiendo que especifiques siempre en qué shell quieres ejecutar tus comandos, para que no tengas que preguntarte por qué tu script se comporta de forma diferente cuando lo ejecutas manualmente que cuando lo ejecutas con el programa "at".
Automatizar
El programa "at" es uno de los muchos programas que te facilitarán el trabajo si utilizas una herramienta tan potente como el sistema operativo Linux en tus servidores. Utiliza herramientas que te faciliten el trabajo y automaticen tareas que de otra forma tendrías que hacer manualmente. Ahorrarás mucho tiempo y, por tanto, dinero.
Artículos sobre un tema similar
Docker build multiarch image
VMware frente a Proxmox: comparación de rendimiento
GitLab CI/CD: automatización de pruebas y despliegue de aplicaciones
Migración de VPS de VMware a Proxmox
Cambio en las licencias de VMware
Ejecución de Microsoft SQL Server en Linux
Copia de seguridad: el Proxmox Backup Server
Linux como router y cortafuegos
Cómo subir una imagen Docker al Registro Docker
Linux: gestión de volúmenes lógicos
Software RAID para Linux
Ejecutar una aplicación web detrás de un proxy
Migración de correo electrónico
Construcción multietapa Docker
Copia de seguridad de los datos al encender el ordenador
Podman
Importación de Windows a la virtualización Proxmox
Docker y correo PHP
Virtualización Proxmox
Docker y Cron
Lenovo ThinkPad X1 Carbon: puesta en servicio del módem LTE EM7544
Proyecto Yocto: Cree un sistema operativo personalizado para dispositivos integrados
Preparación de un servidor Linux para ejecutar una aplicación web en Python
Cómo solucionar el bajo rendimiento de los archivos compartidos en Docker
Cómo empezar a utilizar Docker correctamente
Instalación de Linux en un servidor HPE ProLiant DL320e dedicado
Cómo poner a prueba una aplicación web
Por qué utilizar el sistema de archivos JFS
Cómo arrancar desde un disco de 4TB con GTP usando UEFI
Sistema de archivos Btrfs
Raspberry PI
WINE - ejecución de programas Windous en Linux
Sistema operativo GNU/Linux
Boletin informativo
Si está interesado en recibir noticias puntuales por correo electrónico.
Puedes registrarte rellenando tu email
suscripción de noticias.
+