Välkommen till linuxportalen.se!

Linuxportalen.se är Sveriges största och aktivaste webbplats för användare av öppen- och fri programvara.

Du besöker Linuxportalen.se som gäst vilket begränsar din möjlighet att använda webbplatsens alla funktioner. Genom att registera dig som medlem får du inte bara möjlighet att söka bland webbplatsens innehåll, skapa nya och delta i befintliga diskussioner, skapa din egen blogg, kommunicera med andra medlemmar genom privata meddelanden och delta i omröstningar. Du får också tillgång till Veckans Kadavro - en seriestrip unikt skapad för Linuxportalen.se!

Registeringen sker snabbt och är helt kostnadsfri - tveka inte, bli medlem idag!

Svårt att komma ifrån datorn när det är dags att sova?

Som ett försök till lösning på mina problem med att jag blir kvar längre vid datorn än jag borde har jag utvecklat ett skalskript som tillsammans med cron kan användas för att påminna om att det är dags att sova. För att scriptet ska fungera måste man köra gnome och ha zenity installerat (fungerar direkt i vanliga ubuntu 7.10).
Koden är som följer:

#!/bin/bash
env DISPLAY=:0. zenity --info --text="Dags att sova, datorn stängs av om 5 minuter."&
sleep 4m
env DISPLAY=:0. zenity --info --text="Dags att sova, datorn stängs av om 1 minut."&
sleep 30s
env DISPLAY=:0. zenity --info --text="Datorn stängs av om 30 s, spara ner och avsluta!"&
sleep 30s
env DISPLAY=:0. gnome-session-save --kill
while [ 1 ]
do
sleep 20s
env DISPLAY=:0. gnome-session-save --kill
done

Detta gör följande:

  1. Slänger upp en ruta som säger till 5 min innan sovdags.
  2. Slänger upp en andra ruta 1 minut innan sovdags.
  3. En sista ruta på 30 sekunder innan sovdags
  4. Startar fönstret för att avsluta gnomesessionen
  5. Om man inte avslutar då går den in i en evig loop med 20 s väntan och sedan en ny ruta för att avsluta gnomesessionen

Sedan slänger man in en rad i crontab (crontab -e, för att redigera under ubuntu)
55 22 * * 0-4 <plattsen där du har lagt skriptet>
Just denna rad kommer köra skriptet 22:55, vilket är lämpligt om man ska stänga av datorn för att sova kl 23:00.
Nu kommer väl en hög personer börja babbla om att man ju sover med datorn på men i mitt fall är inte det riktigt ett alternativ (har datorn i sovrummet). Vill man anpassa skriptet för dygnetruntdrift byter man ut gnome-session-save --kill mot gnome-screensaver-command -l så låser den skärmen istället, och eventuellt får man modifiera textsträngarna också.
Jag hoppas någon annan än jag får nytta av det här, om inte annat lärde jag mig skriva en while loop i skalskript.

Tillägg: Har upptäckt att gnome-session-save kräver att man ger den korrekt värde på $SESSION_MANAGER, och har därför slängt ihop följande för att fixa det (förutsätter att användaren endast har en gnome-session igång):

#!/usr/bin/env bash
env DISPLAY=:0. zenity --info --text="Dags att sova, datorn stängs av om 5 minuter."
sleep 4m
env DISPLAY=:0. zenity --info --text="Dags att sova, datorn stängs av om 1 minut."
sleep 30s
env DISPLAY=:0. zenity --info --text="Datorn stängs av om 30 s, spara ner och avsluta!"
sleep 30s
local=$(uname -n)
PID=$(ps -C gnome-session -o pid|grep -v PID|tr -d " ")
env SESSION_MANAGER=local/$local:/tmp/.ICE-unix/$PID env DISPLAY=:0. /usr/bin/gnome-session-save --kill
while [ 1 ]; do sleep 20s; env SESSION_MANAGER=local/$local:/tmp/.ICE-unix/$PID DISPLAY=:0. /usr/bin/gnome-session-save --kill; done

Alternativ för kommentarvisning

Välj ditt önskade sätt att visa kommentarerna och klicka på "Spara" för att verkställa dina ändringar.

Marcuss bild

isch. jag provade ditt script inatt. Att lägga sig när man inte kände sig klar med dagens uppgifter va ingen höjdare!
.
Istället låg man och rullade tummarna och vände på tanken vad man var tvungen att göra och hur man kunde göra det smartaste. Tänker givetvis på nya funktioner på LP. Har en del idéer som ska skapas lite snabbt och diskuteras.
.
Så denna natt tror jag det blev 30 minuters sömn. Hade precis somnat till när väckarklockan ringde.
.
Men lägger det inte på dig =), scriptet va ballt och de e säkert jättebra om man är typen som klarar av att lägga sig på de viset alternativt inte har något speciellt att göra efter kl 21 Smile

Lasps bild

goKväll hade runt 18:49 idag SVT2 ett intressant inslag om uppvaknande. Kolla detta Ni datafreakear.

_____________________________________
Skapa trygghet och gör någon nyfiken,
introducera en Linux distribution.

Pettmans bild

Har du någon anledning att sitta uppe är det bara att gå in i systemövervakaren och döda processen, alternativt så kan du köra en ps -u$USER|grep -vad du nu döpt scriptet till-, notera pid och sedan köra en kill -9 -scriptets pid-

___________________________________
För övrigt anser jag att CapsLock bör förgöras...

Pettmans bild

Lite fel ända av sömncykeln kanske...?

___________________________________
För övrigt anser jag att CapsLock bör förgöras...

Marcuss bild

Ja, jojo visst är det så. Men jag tänkte mer testa för att se hur de fungerade i mitt liv. hade jag inte velat hade jag dödat processen =)