¿Cómo puedo ejecutar automáticamente un script cuando inicio sesión en Windows?
Me gustaría ejecutar algo como esto cada vez que inicie sesión en mi computadora:
echo %USERNAME% logged on at %DATE% %TIME% >> log.txt
Una ventaja sería poder ejecutar el mismo script siempre que desbloquee el protector de pantalla también.
Respuestas:
Puede crear una tarea programada que se ejecutará cuando su computadora esté desbloqueada:
Además, modifiqué la ruta en el script para leer
fuente
Si ya tienes un script:
Para asignar una secuencia de comandos de inicio de sesión a un usuario o grupo
¿Dónde? Herramientas del sistema / Usuarios y grupos locales / Usuarios
De lo contrario, aquí hay un práctico "Cómo" de Microsoft
Crear secuencias de comandos de inicio de sesión
Puede usar secuencias de comandos de inicio de sesión para asignar tareas que se realizarán cuando un usuario inicie sesión en una computadora en particular. Los scripts pueden ejecutar comandos del sistema operativo, establecer variables de entorno del sistema y llamar a otros scripts o programas ejecutables. La familia Windows Server 2003 admite dos entornos de secuencias de comandos: el procesador de comandos ejecuta archivos que contienen comandos de lenguaje por lotes y Windows Script Host (WSH) ejecuta archivos que contienen Microsoft Visual Basic Scripting Edition (VBScript) o comandos Jscript. Puede usar un editor de texto para crear secuencias de comandos de inicio de sesión. Algunas tareas comúnmente realizadas por los scripts de inicio de sesión incluyen:
Asigna la unidad H: al directorio de inicio del usuario llamando al método MapNetworkDrive del objeto de red WSH en combinación con la propiedad UserName del objeto de red WSH. Utiliza el objeto ADSI IADsADSystemInfo para obtener el nombre distinguido del usuario actual, que a su vez se utiliza para conectarse al objeto de usuario correspondiente en Active Directory. Una vez que se establece la conexión, la lista de grupos a los que pertenece el usuario se recupera utilizando el atributo memberOf del usuario. La lista multivalor de nombres de grupos se une en una sola cadena mediante la función Unir de VBScript para facilitar la búsqueda de nombres de grupos objetivo.
Si el usuario actual es miembro de uno de los tres grupos definidos en la parte superior de la secuencia de comandos, la secuencia de comandos asigna la unidad G: del usuario a la unidad compartida del grupo y establece la impresora predeterminada del usuario para que sea la impresora de grupo. Para crear un script de inicio de sesión de ejemplo
Copie y pegue, o escriba, lo siguiente:
En el menú Archivo, haga clic en Guardar como.
fuente
La forma más simple en que puedo pensar sería poner esto en un archivo .bat en su carpeta de inicio.
Una forma más complicada sería agregar el archivo por lotes al registro en el
clave de registro.
fuente
Un buen método alternativo es crear un archivo por lotes con los comandos que desea ejecutar en ellos. A continuación, especificará en el editor de políticas de la máquina que ejecuta un script de inicio de sesión como parte del proceso de inicio de sesión. Una nota rápida es que esta opción solo está disponible en XP Pro y no en la versión doméstica.
Tutorial del editor de directivas de grupo aquí
fuente
Hay una manera para Windows 7 y / o Windows Server 2008.
Use el Programador de tareas, cree una nueva tarea básica, ya que Trigger usa "Cuando inicio sesión".
fuente
¡No hay necesidad! Windows ya tiene un mecanismo para registrar esto en el registro de eventos. El ID de evento es 4624 (528 en sistemas anteriores a Vista).
fuente