miércoles, 28 de julio de 2010

Una ronda de bash ( y II )

[La primera parte] (La división va porque se hace incómodo editar el HTML para meter los spoilers con posts largos... si, lo se, soy un vago)

Nota: por alguna razón no se muestran los spoilers si se ven desde la portada, entrad en el post y debería ir.

Los siguientes códigos usan /proc/acpi/ para mostrar la temperatura y Zenity o KDialog para mostrarlo por una GUI

El primero es la base, muestra simplemente las temperaturas por pantalla [temp.sh]:


./temp.sh [-c]

El -c para que también se muestre el símbolo de la medida (¿grados?)


#!/bin/bash
# Escrito por kenkeiras
back=$PWD
cd /proc/acpi/thermal_zone/
if [ "$1" = "-c" ]; then
    lonx=4
else
    lonx=3
fi

for i in *; do
    e=`cat $i/temperature`
    e=${e:`expr length "$e"`-4:$lonx}
    echo "$i: $e"
done

cd $back


Este es con Zenity, es decir, con Gtk [ztemp.sh]


./ztemp.sh




#!/bin/bash
# Escrito por kenkeiras
back=$PWD
cd /proc/acpi/thermal_zone/
tmpList=""
for i in *; do
    e=`cat $i/temperature`
    e=${e:`expr length "$e"`-4:3}
    tmpList="$tmpList $i $e"
done
cd $back
zenity --list --text "" --title "ZenTemp" \
--column "Dispositivo" --column "Temperatura" $tmpList



Visto esto ya no parece tan dificil programar GUI's ^^

Y con KDialog (Qt/Kde) [ktemp.sh]:


./ktemp.sh




#!/bin/bash
# Escrito por kenkeiras
back=$PWD
dump=kdetempdump
cd /proc/acpi/thermal_zone/
tmpVar=""
for i in *; do
    e=`cat $i/temperature`
    e=${e:`expr length "$e"`-4:3}
    tmpVar=$tmpVar"$i: $e\n"
done
cd $back
echo -en $tmpVar > $dump
kdialog --title "KdeTemp" --textbox $dump
rm -f $dump



Y eso es todo, hasta otra

ps: De nuevo todo bajo la WTFPL, claro

2 comentarios: