Skript som visar batteristatus i fönsterhanteraren awesome
Postat: 06 dec 2008, 02:39
Hej!
Jag har en eee pc som jag installerat Ubuntu eee på, och använder awesome (v. 2.3) som fönsterhanterare. Eftersom det hänt både en och två gånger att jag laddat ur batteriet utan att märka något funderade jag på om jag inte i mitt hemmagjorda skript som visar klocka och vem som är inloggad med lite enkla medel också kunde göra ett script som talade om hur mycket batteri jag hade.
Med mina återhållsamma kunskaper i regexp och att använda terminalprogrammen som verktyg åstadkom jag följande i mitt awesomescript:
där
alltså är själva batteristatusen. Det är ändå förstås en lösning inte helt utan problem.
1. För det första visas inte första siffran om talet skulle vara tresiffrigt (100%). Det är egentligen inte nödvändigt, då jag nog nästan föredrar att det är dolt om batteriet är helt laddat och/eller jag kör på vanlig ström (vilket det är om jag i tiotalssiffran anger 1-9 som värden), men av ren nyfikenhet undrar jag hur man kan lösa det, om det går i en sådan kommandorad med regexp, eller hur man gör det?
2, Sedan blir det tack vare scriptet förstås ett mellanslag för mycket mellan mitt hostname och datuminformationen ifall inte någon batteriinfo visas (i praktiken har jag alltså bara 1-9 som godkända värden på tiotalssiffran ännu). Hur skulle man kunna lösa det, så att det extra mellanslaget bara visas ifall batteriinfon visas?
3, Om jag till exempel vill att det står "batteri" om acpi säger "discharging", laddar ifall det står.. ja, ni förstår. Hur skulle man i så fall kunna göra det? (Lägst prioritet).
Tack på förhand för alla intressanta svar och tips.
Jag har en eee pc som jag installerat Ubuntu eee på, och använder awesome (v. 2.3) som fönsterhanterare. Eftersom det hänt både en och två gånger att jag laddat ur batteriet utan att märka något funderade jag på om jag inte i mitt hemmagjorda skript som visar klocka och vem som är inloggad med lite enkla medel också kunde göra ett script som talade om hur mycket batteri jag hade.
Med mina återhållsamma kunskaper i regexp och att använda terminalprogrammen som verktyg åstadkom jag följande i mitt awesomescript:
Kod: Markera allt
echo "0 widget_tell mystatusbar clock text `whoami`@`uname -n` `acpi | grep -o [\ ,0-9][0-9]\%` `date '+%a %d %b %T'` "
Kod: Markera allt
acpi | grep -o [\ ,0-9][0-9]\%
1. För det första visas inte första siffran om talet skulle vara tresiffrigt (100%). Det är egentligen inte nödvändigt, då jag nog nästan föredrar att det är dolt om batteriet är helt laddat och/eller jag kör på vanlig ström (vilket det är om jag i tiotalssiffran anger 1-9 som värden), men av ren nyfikenhet undrar jag hur man kan lösa det, om det går i en sådan kommandorad med regexp, eller hur man gör det?
2, Sedan blir det tack vare scriptet förstås ett mellanslag för mycket mellan mitt hostname och datuminformationen ifall inte någon batteriinfo visas (i praktiken har jag alltså bara 1-9 som godkända värden på tiotalssiffran ännu). Hur skulle man kunna lösa det, så att det extra mellanslaget bara visas ifall batteriinfon visas?
3, Om jag till exempel vill att det står "batteri" om acpi säger "discharging", laddar ifall det står.. ja, ni förstår. Hur skulle man i så fall kunna göra det? (Lägst prioritet).
Tack på förhand för alla intressanta svar och tips.
