El comando at programa comandos y programas (tareas) para que se ejecuten en un ordenador a una hora y fecha específicas. Puede usar at solo cuando el servicio de Programación se esté ejecutando. Usado sin parámetros, at da una lista de comandos programados.
at [\NombreEquipo] [{[ID] [/delete] | /delete [/yes]}]
at [[\NombreEquipo] Horas:Minutos [/interactive] [{/every:Fecha[,...] | /next:Fecha[,...]}] comando]
Parámetros
Parámetro |
Descripción |
|
|
\\NombreEquipo |
Especifica el nombre de un equipo/ordenador remoto. Si omite este parámetro, los horarios de los comandos y programas se ejecutarán en el ordenador local. |
|
|
ID |
Especifica el número de identificación asignado a un comando programado. |
|
|
/delete |
Cancela una tarea programada. Si se omite el ID, se cancelan todas las tareas programadas en el equipo. |
|
|
/yes |
Responde sí a todas las consultas del sistema cuando elimina eventos programados. |
|
|
Horas:Minutos |
Especifica la hora en que deseas ejecutar la tarea. El tiempo se expresa como Horas **:** Minutos en notación de 24 horas (es decir, 00:00 [medianoche] hasta las 23:59). |
|
|
/interactive |
Permite que la tarea interactúe con el escritorio del usuario que inició sesión en el momento en que se ejecuta la tarea. |
|
|
/every: |
Ejecuta la tarea todos los días o días especificados de la semana o mes (por ejemplo, todos los jueves o el tercer día de cada mes). |
|
|
Fecha |
Especifica la fecha en la que desea ejecutar el comando. Puede especificar uno o más días de la semana (es decir, M, T, W, Th, F, S, Su) o uno o más días del mes (es decir, de1 a 31). Separa las entradas de fechas múltiples con comas. Si omites Fecha, se utiliza el día actual del mes. |
|
|
/next: |
Ejecuta la tarea en la próxima aparición del día (por ejemplo, el próximo jueves). |
|
|
comando |
Especifica el comando de Windows, el programa (es decir, el archivo .exe o .com) o el programa por lotes (es decir, el archivo .bat o .cmd) que desea ejecutar. Cuando el comando requiere una ruta como argumento, use la ruta absoluta (es decir, la ruta completa que comienza con la letra de la unidad). Si el comando está en un ordenador remoto, especifiqua la notación de la Convención de nomenclatura universal (UNC) para el servidor y comparte el nombre, en lugar de una letra de unidad remota. |
|
|
/? |
Muestra la Ayuda en el símbolo del sistema. |
Observaciones
Schtasks es otra herramienta de programación de línea de comandos que puede usar para crear y administrar tareas programadas. Para obtener más información acerca de las tareas, haz clic sobre el enlace.
Usando el comando at. Para usar at, debes ser miembro del grupo de administradores locales.
Cargando cmd.exe. Cuando at no carga automáticamente cmd.exe, el intérprete de comandos, antes de ejecutar comandos. Si no está ejecutando un archivo ejecutable (.exe), debes cargar explícitamente cmd.exe al comienzo del comando de la siguiente manera:
C:\>cmd /c dir > c:\testo.out
Ver tareas programados. Cuando usas at sin opciones de línea de comandos, las tareas programadas aparecen en una tabla con un formato similar al siguiente:
Estado ID Día Hora Command Line
OK 1 Each F 04: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
Incluyendo número de identificación (ID). Cuando incluyes un número de identificación (ID) en el comnado at, la información para una sola entrada aparece en un formato similar al siguiente:
Tarea ID: 1
Estatus: OK
Clendario: Each F
Hora del día: 4:30 PM
Comando: net send group leads status due
Después de programar un comando con at, especialmente un comando que tiene opciones de línea de comando, verifica que la sintaxis del comando sea correcta escribiendo at sin opciones de línea de comando. Si la información en la columna Línea de comando es incorrecta, elimina el comando y vuelve a escribirlo. Si aún es incorrecto, vuelve a escribir el comando con menos opciones de línea de comando.
Ver resultados. Comandos programados con at en ejecución como proceso en segundo plano(Backgroud process). La salida no se muestra en la pantalla del equipo. Para redirigir la salida a un archivo, usa el símbolo de redirección (>). Si rediriges la salida a un archivo, debes usar el símbolo de escape (^) antes del símbolo de redireccionamiento, ya sea que lo estés utilizando en la línea de comando o en un archivo por lotes. Por ejemplo, para redirigir la salida a salidfa.txt, escribe:
C:\>at 14:45 c:\test.bat ^>c:\salida.txt
Cambio de hora del sistema.Si cambias la hora del sistema en un ordenador después de programar un comando para que se ejecute con at, sincroniza el programador at con la hora revisada del sistema escribiendo sin opciones de línea de comandos.
Almacenar comandos. Los comandos programados se almacenan en el registro. Como resultado, no pierdes las tareas programadas si reinicia el servicio Schedule.
Conexión a unidades de red. No utilices una unidad redirigida para 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 está conectado en el momento en que se ejecuta la tarea programada. En su lugar, usa rutas UNC para trabajos programados. Por ejemplo:
C:\>at 1:00pm mi_backup \servidor\comun
No utilices la siguiente sintaxis, donde x: es una conexión realizada por el usuario:
C:\>at 1:00pm mi_backup x:
Si programas un comando at que usa una letra de unidad para conectarse a un directorio compartido, incluye un comando at para desconectar la unidad cuando termines de usarla. Si la unidad no está desconectada, la letra de unidad asignada no está disponible en el símbolo del sistema.
Tareas que terminan después de 72 horas. Por defecto, las tareas programadas con el comando at se detienen después de 72 horas. Puede modificar el registro para cambiar este valor predeterminado.
Busca la siguiente clave en el registro y modifícala (Usa regedit.exe para editar el registro de Windows):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Schedule
regedit.exe . En el menú "Edición", haz clic en "Agregar valor" y a continuación, agregua el siguiente valor de registro: Nombre del valor: AtTaskMaxHours Tipo de datos: REG_DWORD Radix: Datos del valor decimal: 0. Un valor de 0 en el campo de datos del valor indica que no hay límite, no se detiene. Los valores del 1 al 99 indican la cantidad de horas.
La edición incorrecta del registro puede dañar gravemente su sistema. Antes de realizar cambios en el registro, debes hacer una copia de seguridad de los datos valiosos del ordenador.
Programador de tareas y el comando at. Puede usar la carpeta Tareas programadas para ver o modificar la configuración de una tarea que se creó mediante el comando at. Cuando programas una tarea utilizando el comando at, la tarea aparece en la carpeta Tareas programadas, con un nombre como el siguiente: At3478. Sin embargo, si modificas una tarea at a través de la carpeta Tareas programadas, se actualiza a una tarea programada normal. La tarea ya no es visible para el comando at, y la configuración de la cuenta at ya no se aplica a ella. Debes introducir explícitamente una cuenta de usuario y contraseña para la tarea.
Ejemplos
Para mostrar una lista de comandos programados en el servidor de Marketing, escribe:
C:\>at \comercial
Para obtener más información sobre un comando con el número de identificación 3 en el servidor Corpo, escribe:
C:\>at \Corpo 3
Para programar un comando net share para que se ejecute en el servidor Corpo a las 8:00 a.m. y redirija la lista al servidor de Mantenimiento, en el directorio compartido de Informes y el archivo corp.txt, escribe:
at \Corpo 08:00 cmd /c "net share reports=d:\comercial\informes >> \mantenimiento\informes\corp.txt"
Para realizar una copia de seguridad del disco duro del servidor de departamento Comercial en una unidad de cinta a la medianoche cada cinco días, cree un programa por lotes llamado Archive.cmd, que contiene los comandos de copia de seguridad y luego programe la ejecución del programa por lotes, escribe:
C:\>at \marketing 00:00 /every:5,10,15,20,25,30 archive
Para cancelar todos los comandos programados en el servidor actual, borra la información en la programación de la siguiente manera:
C:\>at /delete
Para ejecutar un comando que no sea un archivo ejecutable (es decir, .exe), precede el comando con cmd /c para cargar Cmd.exe de la siguiente manera:
C:\>cmd /c dir > c:\test.out