Posts tagged: script

Calcolare il pigreco. (π)

Questo è uno script non mio, ma siccome non mi ricordo la fonte, lo copio-incollo senza pudore tanto non è un segreto industriale. Salvate in pi.sh (o col nome che volete) questo scriptino.

#!/bin/bash

time bc -q -l << EOF
scale=$1
4*a(1)
quit
EOF

Rendetelo eseguibile (chmod a+x ./pi.sh) e ora lanciatelo seguito dal numero di cifre dopo la virgola che volete calcolare.

$ pi.sh 10
3.1415926532

real    0m0.009s
user    0m0.000s
sys     0m0.004s

Tenete conto che è un’approssimazione quindi l’ultima o le ultime due cifre non sono molto affidabili. E’ comunque un test carino (visto il “time”) per fare dei piccoli benchmark. Ma soprattutto la vostra curiosità dovrebbe spingeri fino a questa manpage:

NAME
bc – An arbitrary precision calculator language

Contenti?

Bloccare il PC quando sei lontano

Oggi ero in vena di smanettamenti e ho creato questo scriptino da lanciare all’avvio di KDE4 (ma in teoria anche GNOME, e altri, ma di certo non mi metterò a provarlo) per fare in modo che la sessione venga “lockata” quando siete lontani. Dovete avere il bluetooth sul PC e pure sul cellulare che tenete in tasca. Quando il cellulare non sarà più nel range del computer, partirà lo screensaver con blocco della sessione.

Innanzitutto attivate il bluetooth sul cellulare (o qualsiasi altra periferica) e rendetelo visibile a tutti, ora date il comando

$ hcitool scan
Scanning …
00:13:57:9B:DF:24       Qualsiasi

Segnatevi il MAC address, nel mio caso (è finto) “00:13:57:9B:DF:24″, questa è la periferica che controllerà la sessione. Ora potete mettere il telefono in modalità “invisibile”, ma non spegnere il bluetooth.

Nella vostra home, andata in .kde4/Autostart

cd ~/.kde4/Autostart/

create un file contenente questo script (ad esempio lock.sh) sostituendo alla linea KEY_MAC quello che vi eravate segnati pocanzi:

#!/bin/bash

ENABLED=$(kdialog –yesno “Bluetooth Key?”;echo $?)

if [ "$ENABLED" != "0" ]; then
exit 0
fi

KEY_MAC=”00:13:57:9B:DF:24″;

while [ "1" ]; do
DEVNAME=`hcitool name $KEY_MAC`;

if [ -z "$DEVNAME" ]; then
qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
fi

sleep 60

done;

Rendete il file eseguibile, così

chmod a+x lock.sh

dal prossimo avvio di KDE4 una finestrella vi chiederà se in quella sessione volete usare questa possibilità, così potrete lavorare tranquilli anche quando dimenticherete il cellulare a casa, o quando è scarico.

Il controllo della presenza del telefono viene fatto ogni 60 secondi.