Quiero crear un archivo por lotes que cree una tarea programada para ejecutar un archivo .cmd cuando un usuario específico inicie sesión. Hasta ahora se me ocurrió esto:
@echo off
schtasks /CREATE /RU %username% /TN "TaskName" /TR "C:\folder\file.cmd" ^
/SC ONLOGON /DELAY 0000:10 /IT /RL highest
PAUSE
lo que crea la tarea muy bien, pero al mirar las propiedades del disparador, la opción 'Cualquier usuario' está marcada en lugar de 'Usuario específico'. He intentado buscar soluciones a todas partes, pero todo parecía apuntar a utilizar /IT
con /RU
.
También como una pregunta secundaria, ¿necesito incluir /PU
en el script? Planeo ejecutar el archivo por lotes en varias máquinas y creo que será un problema de seguridad / implementación pedir a las personas sus contraseñas.
windows-7
command-line
batch
windows-task-scheduler
Personalizar
fuente
fuente
Respuestas:
Como se menciona en https://technet.microsoft.com/en-us/library/cc725744(v=ws.11).aspx "el parámetro / it para indicar que la tarea se ejecuta solo cuando el (usuario específico) está conectado "
Debe ignorar la GUI del Programador de tareas donde se menciona "Al iniciar sesión de cualquier usuario" e intentar reiniciar su dispositivo. Verá que el comando específico solo se ejecuta cuando inicia sesión con la cuenta del (usuario específico).
fuente