Ejecutar script cuando se cierre Plasma

Quería que se ejecutara un script que he creado, cada vez que se apagara el equipo, en este caso openSUSE con Plasma

consola-linux-tux

Os pongo en antecedentes. Quería que antes de que mi sistema se apagara se ejecutara un script sencillo que había creado. He leido varias cosas sobre cómo hacerlo mediante systemd, y después de varios intentos no he podido. Pero las opciones de Plasma en mi openSUSE me han dado la solución sencilla para una sencilla tarea.

El script es algo sencillo, de una sola línea, esta que muestro por aqui:

(date | awk '{print $3 "-" $2 "-"  $6}' && uptime | awk '{print $3}' && sensors | grep "Core" | awk '{print $3}' && echo "----------------") >> /home/victorhck/Scripts/apagado.txt

Esta sencilla línea guarda en un archivo llamado apagado.txt  la fecha, el tiempo que hace que el PC estuvo funcionando aka “uptime” y la temperatura.

Esta información quería que se guardara cuando apagase el PC, simplemente por curiosidad… cosas que se nos pasan por la mente a los geeks! 🙂

Así que me puse manos a la obra de cómo conseguirlo. Lei ejemplos y cuestiones similares con soluciones de cómo conseguirle mediante systemd. Traté de poner en práctica esas soluciones, que en mi caso no fueron efectivas.También lo intenté mediante YaST buscando entre sus opciones, y nada…

Y después de mucho probar, finalmente en las Preferencias del sistema de Plasma conseguí lo que necesitaba. Una solución sencilla para una sencilla curiosidad. Veamos cómo hacerlo.

Vamos a Preferencias del sistema → Arranque y apagado.

En la parte derecha pulsamos sobre Añadir script... nos aparece una ventana de diálogo donde ingresaremos la ruta de donde está nuestro script. Aceptamos y le decimos que se ejecute en al cerrar sesión, y eso es todo. Una imagen del proceso.

scrip_inicio

pincha sobre la imagen para ampliar

La próxima vez que cerremos la sesión se ejecutará nuestro script. Por supuesto el script deberá tener derechos y ser ejecutable (chmod +x), también os recomiendo primero depurar el script para que no se quede en un bucle, ni que sea algo complejo que añada tiempo en el cierre de sesión de vuestro equipo.

Con esto finalmente en cada cierre del sistema consigo que se añadan los datos en un archivo de texto que tendrá una apariencia similar a esto, y que irá creciendo cada vez que se ejecute:

monitorizado fecha, uptime y temperatura al apagar el PC

5-jul-2016
0:33,
+48.0°C
+52.0°C
----------------

¿sabes una forma más sencilla de conseguirlo? ¿sabes cómo hacerlo mediante systemd? compártelo en los comentarios.

—————————————————

4 pensamientos en “Ejecutar script cuando se cierre Plasma

    • Hola!
      sep, leí varias soluciones en diversos foros, blogs, etc… pero algo no hacía bien, porque no conseguí hacerlo funcionar.

      Echaré un vistazo al link!

      Saludos!!

  1. script :
    faltan los tag’s codes xD

    #!/usr/bin/env bash
    
    printf "$(date) - $(/usr/bin/uptime | sed 's/.*up \([^,]*\), .*/\1/')\n \n$(sensors | grep -i core | sed 1d)\n" >> /home/$USER/estado.txt
    
    ^^la salida la podeis cambiar obviamente (e igual manera seria interesante agregarle el correo con mail -s (?) )
    

    chmod u+x nombre_script.sh

    luego debeis crear un service….

    se guarda con cualquier nombre, pero debe terminar en .service
    eje : status.service

    sudo vim /etc/systemd/system/status.service

    [Unit]
    Description=AKA_Descripcion
    Before=shutdown.target reboot.target halt.target
    
    [Service]
    ExecStart=/bin/true
    ExecStop=/PATH/TO/SCRIPT
    RemainAfterExit=yes
    
    
    [Install]
    WantedBy=reboot.target
    
    

    luego se debe establecer al inicio de systemd
    sudo systemctl enable nombre_que_le_hayas_puesto

    luego reinicias..

    saludo 😄

Me gustaría saber tu opinión. Deja un comentario (Puedes usar MarkDown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s