Los comandos ejecutados por at no se ejecutan en el terminal donde se registraron. Esto no tendría sentido en general: el terminal podría no existir más, o podría estar en uso por un usuario diferente. Puede que incluso haya cerrado la sesión cuando se ejecute el comando.
La salida de un comando at se le envía por correo electrónico. Ese es el correo electrónico local de Unix, no cualquier cuenta POP o IMAP externa que haya configurado en algún programa de correo electrónico. Si su correo electrónico local no está configurado, se pierde la salida del comando. Si su correo electrónico local no está configurado, esta guía puede ayudarlo.
Si desea que un comando at interactúe con su terminal, debe usar una redirección explícita. Por ejemplo:
echo "echo hello >$TTY" | at now + 1 min
Tenga en cuenta que en este fragmento, la variable TTY
se expande por el shell, por lo que la entrada a at
es algo así echo hello >/dev/pts/42
.
Gilles 'SO- deja de ser malvado'
fuente