3 votos

¿Ejecutar script al cerrar sesión?

¿Es posible ejecutar un script cuando y sólo cuando ¿se cierra la sesión de un usuario? La razón por la que quiero hacer esto es para poder cambiar el mensaje de inicio de sesión ( sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText "Message" ). ¿Hay alguna forma de hacerlo?

2voto

cmcculloh Puntos 11040

Machints tiene un ejemplo de script disponible aquí para escribir los eventos de inicio y cierre de sesión en un archivo de registro.

Básicamente necesitas escribir tu script, darle derechos de ejecución y luego añadirlo al archivo LogoutHook evento:

sudo defaults write com.apple.loginwindow \ LogoutHook /usr/local/bin/logoutscript

Para algunos script más avanzados también puedes echar un vistazo aquí

Solución alternativa

Eche un vistazo al lanzamientod servicios. Es el sistema de gestión de servicios integrado que utiliza OSX. Algunas sugerencias son hacer que launchd monitorice un archivo, y usando el logoutHook de arriba, tocar el archivo, lo que hará que launchd se ejecute. En el trabajo launchd puede dormir el proceso durante unos segundos para asegurarse de que el cierre de sesión se ha completado.

No es la solución ideal, pero podría funcionar.

0voto

Adam V Puntos 2774

Puedes cambiar el texto de tu pantalla de inicio de sesión, sin necesidad de ejecutar un script si se trata de un cambio puntual o poco frecuente. Tienes que añadir la clave

enter image description here

a /Library/Preferences/com.apple.loginwindow.plist ya sea con un editor de texto o mediante un comando de terminal que hace lo mismo. Este artículo describe ambas vías.

0voto

Consulte aquí cómo ejecutar un script: ¿Cómo puedo ejecutar/detener/reiniciar una aplicación automáticamente, en el arranque/inicio de sesión/en algún otro momento?

Haz que tu script compruebe si el usuario ha iniciado sesión. En caso afirmativo, salga. Si no, haz lo tuyo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X