Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Programa comandos y programas para que se ejecuten en un equipo at una fecha y hora especificadas. Solo puede usar at cuando se ejecuta el servicio Schedule. Se usa sin parámetros, at enumera los comandos programados. Debe ser miembro del grupo Administradores local para ejecutar este comando.
Sintaxis
at [\computername] [[id] [/delete] | /delete [/yes]]
at [\computername] <time> [/interactive] [/every:date[,...] | /next:date[,...]] <command>
Parámetros
Parámetro | Descripción |
---|---|
\<computername\> |
Especifica un equipo remoto. Si omite este parámetro, at programa los comandos y los programas en el equipo local. |
<id> |
Especifica el número de identificación asignado a un comando programado. |
/borrar | Cancela un comando programado. Si omite ID, se cancelan todos los comandos programados del equipo. |
/Sí | Responde sí a todas las consultas del sistema al eliminar eventos programados. |
<time> |
Especifica la hora en que desea ejecutar el comando. La hora se expresa en horas:minutos en notación de 24 horas (es decir, 00:00 (medianoche) a 23:59). |
interactiva | Permite que el comando interactúe con el escritorio del usuario que ha iniciado sesión en at la hora en que se ejecuta command . |
cada: | Ejecuta command el día o los días especificados de la semana o del mes (por ejemplo, todos los jueves o el tercer día de cada mes). |
<date> |
Especifica la fecha en que desea ejecutar el comando. Puede especificar uno o varios días de la semana (es decir, escriba M,T,W,Th,F,S,Su) o uno o varios días del mes (es decir, escriba de 1 a 31). En el caso de varias entradas de fecha, sepárelas con comas. Si omite la fecha, at usa el día actual del mes. |
próximo: | Ejecuta command el siguiente día que procede (por ejemplo, el próximo jueves). |
<command> |
Especifica el comando de Windows, programa (es decir, archivo .exe o .com) o programa por lotes (es decir, archivo .bat o .cmd) que desea ejecutar. Cuando el comando requiera una ruta de acceso como argumento, use la ruta de acceso absoluta (es decir, toda la ruta de acceso que comienza con la letra de unidad). Si el comando está en un equipo remoto, especifique la notación UNC (Convención de nomenclatura universal) para el servidor y el nombre del recurso compartido, en lugar de una letra de unidad remota. |
/? | Muestra ayuda at al símbolo del sistema. |
Comentarios
Este comando no carga automáticamente cmd.exe antes de ejecutar comandos. Si no está ejecutando un archivo ejecutable (.exe), debe cargar explícitamente cmd.exe at el principio del comando de la siguiente manera:
cmd /c dir > c:\test.out
Si usa este comando sin opciones de línea de comandos, las tareas programadas aparecen en una tabla con formato similar al siguiente:
Status ID Day time Command Line OK 1 Each F 4:30 PM net send group leads status due OK 2 Each M 12:00 AM chkstor > check.file OK 3 Each F 11:59 PM backup2.bat
Si se incluye un número de identificación (ID) con este comando, solo aparece información de una sola entrada en un formato similar al siguiente:
Task ID: 1 Status: OK Schedule: Each F Time of Day: 4:30 PM Command: net send group leads status due
Después de programar un comando, especialmente un comando que tenga opciones de línea de comandos, compruebe que la sintaxis del comando es correcta escribiendo at sin opciones de línea de comandos. Si la información de la columna Línea de comandos es incorrecta, elimine el comando y vuelva a escribirlo. Si aun así es incorrecto, vuelva a escribir el comando con menos opciones de línea de comandos.
Comandos programados con at ejecución como procesos en segundo plano. La salida no se muestra en la pantalla del equipo. Para redirigir la salida a un archivo, use el símbolo de redireccionamiento
>
. Si redirige la salida a un archivo, debe usar el símbolo^
de escape antes del símbolo de redirección, tanto si usa atat la línea de comandos como en un archivo por lotes. Por ejemplo, para redirigir la salida a output.txt, escriba lo siguiente:at 14:45 c:\test.bat ^>c:\output.txt
El directorio actual del comando en ejecución es la carpeta systemroot.
Si cambia la hora del sistema después de programar la ejecución de un comando, sincronice el at programador con la hora revisada del sistema escribiendo at sin opciones de línea de comandos.
Los comandos programados se almacenan en el Registro. Como resultado, no perderá las tareas programadas si reinicia el servicio de programación.
No use una unidad redirigida para los trabajos programados que acceden a la red. Es posible que el servicio Schedule no pueda acceder a la unidad redirigida o que la unidad redirigida no esté presente si un usuario diferente ha iniciado sesión at la hora en que se ejecuta la tarea programada. En su lugar, use rutas UNC para trabajos programados. Por ejemplo:
at 1:00pm my_backup \\server\share
No use la siguiente sintaxis, donde x: es una conexión realizada por el usuario:
at 1:00pm my_backup x:
Si programa un at comando que usa una letra de unidad para conectarse a un directorio compartido, incluya un at comando para desconectar la unidad cuando termine de usar la unidad. Si la unidad no está desconectada, la letra de unidad asignada no estará disponible at en el símbolo del sistema.
De forma predeterminada, las tareas programadas que utilizan este comando se detendrán después de 72 horas. Puede modificar el Registro para cambiar este valor predeterminado.
Para modificar el Registro
Precaución
La edición incorrecta del Registro puede dañar gravemente el sistema. Antes de realizar cambios en el Registro, debe hacer una copia de seguridad de los datos de valor guardados en el equipo.
Inicie el Editor del Registro (regedit.exe).
Busque y haga clic en la siguiente clave del Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Schedule
En el menú Editar, haga clic en Agregar valor y, a continuación, agregue los siguientes valores del Registro:
Nombre del valor. atTaskMaxHours
Tipo de datos. reg_DWOrd
Radix. Decimal
Datos de valor: 0. Un valor de 0 en el campo Value Data indica que no hay ningún límite y que no se detiene. Los valores comprendidos entre 1 y 99 indican el número de horas.
Puede usar la carpeta Tareas programadas para ver o modificar la configuración de una tarea que se creó mediante este comando. Al programar una tarea con este comando, la tarea aparece en la carpeta Tareas programadas, con un nombre similar al siguiente: at3478. Sin embargo, si modifica una tarea a través de la carpeta Tareas programadas, se actualiza a una tarea programada normal. La tarea ya no es visible para el at comando y la configuración de la at cuenta ya no se aplica a él. Debe escribir explícitamente una cuenta de usuario y una contraseña para la tarea.
Ejemplos
Para mostrar una lista de comandos programados en el servidor de marketing, escriba lo siguiente:
at \\marketing
Para obtener más información sobre un comando con el número de identificación 3 en el servidor Corp, escriba lo siguiente:
at \\corp 3
Para programar un comando net share para que se ejecute en el servidor at Corp 8:00 A.M. y redirigir la lista al servidor de mantenimiento, en el directorio compartido Informes y el archivo Corp.txt, escriba:
at \\corp 08:00 cmd /c net share reports=d:\marketing\reports >> \\maintenance\reports\corp.txt
Para realizar una copia de seguridad de la unidad de disco duro del servidor de marketing en una at medianoche cada cinco días, cree un programa por lotes denominado Archive.cmd, que contiene los comandos de copia de seguridad y, a continuación, programe el programa por lotes para ejecutarse, escriba:
at \\marketing 00:00 /every:5,10,15,20,25,30 archive
Para cancelar todos los comandos programados en el servidor actual, borre la información de at programación de la siguiente manera:
at /delete
Para ejecutar un comando que no es un archivo ejecutable (.exe), coloque cmd /c delante del comando para cargar cmd.exe de la siguiente manera:
cmd /c dir > c:\test.out
Vínculos relacionados
schtasks. Otra herramienta de programación de línea de comandos.