Countdown bash script

 

 

Countdown bash script:

#!/bin/bash
 
if [ "$#" -lt "2" ] ; then
    echo "Incorrect usage ! Example:"
    echo './countdown.sh -d  "Jun 10 2011 16:06"'
    echo 'or'
    echo './countdown.sh -m  90'
    exit 1
fi
 
now=`date +%s`
 
if [ "$1" = "-d" ] ; then
    until=`date -d "$2" +%s`
    sec_rem=`expr $until - $now`
    echo "-d"
    if [ $sec_rem -lt 1 ]; then
        echo "$2 is already history !"
    fi
fi
 
if [ "$1" = "-m" ] ; then
    until=`expr 60 \* $2`
    until=`expr $until + $now`
    sec_rem=`expr $until - $now`
    echo "-m"
    if [ $sec_rem -lt 1 ]; then
        echo "$2 is already history !"
    fi
fi
 
 
while [ $sec_rem -gt 0 ]; do
    clear
    date
    let sec_rem=$sec_rem-1
    interval=$sec_rem
    seconds=`expr $interval % 60`
    interval=`expr $interval - $seconds`
    minutes=`expr $interval % 3600 / 60`
    interval=`expr $interval - $minutes`
    hours=`expr $interval % 86400 / 3600`
    interval=`expr $interval - $hours`
    days=`expr $interval % 604800 / 86400`
    interval=`expr $interval - $hours`
    weeks=`expr $interval / 604800`
    echo "----------------------------"
    echo "Seconds: " $seconds
    echo "Minutes: " $minutes
    echo "Hours:   " $hours
    echo "Days:    " $days
    echo "Weeks:   " $weeks
    sleep 1
done

salviamo il file come bash-countdown.sh:

$ chmod +x bash-countdown.sh

adesso siamo pronti per il conto alla rovescia:

countdown per le ferie:

$ ./bash-countdown.sh -d "AUG 07 2010"

sab 12 giu 2010, 16.49.59, CEST
—————————-
Seconds:  0
Minutes:  10
Hours:    7
Days:     6
Weeks:    7

countdown di 90 minuti:

$ ./bash-countdown.sh -m 90

countdown per Inghilterra-Stati Uniti stasera:

$ ./bash-countdown.sh -d 20:30:00

 

Questo lo script, per chi ha bisogno di un applet, esiste timer-applet.

Recuperare data di nascita di un OS Gnu/Linux

Questo è un semplice comando che serve a determinare la data d'installazione del nostro O.S. Gnu/Linux, a partire dal piu vecchio file di configurazione presente nel nostro sistema.

$ ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'


edmond@debianbox:~$ ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'
10 mar 21.18

Blocco volontario del cdrom

 

Questo è un piccolo trucchetto che consiste nel bloccare volontariamente il cdrom. La domanda, per altro legittima che uno può farsi è: " perchè mai dovrei bloccare il cdrom? " Gli scenari possono essere diversi, io mi limito a menzionarne uno: " stai guardando un pornazzo che un amico ti ha regalato, tua moglie/fidanzata vedendoti preso e con la lingua di fuori ti chiede cosa stai vedendo, e tu, subito rispondi che ti hanno regalato un film di Bruce Lee che erano anni che non vedevi, e per questo sei affascinato dalle sue performance che non ricordavi ormai più. La risposta che hai dato sai già che non è proprio convincente, ma comunque vai avanti con la visione. Ad un certo punto sazio del film senti il bisogno di ritirarti per deliberare in bagno, e mentre ti avvii vedi un lampo balenare negli occhi di tua moglie/fidanzata, a quel punto capisci che lei sta aspettando il momento della tua delibera per andare a tirare fuori il cdrom, ma il nerd che c'è in te reagisce e prima della delibera digiti:

$ eject -i on

oppure

$ eject -i 1

che serve per bloccare il cdrom. Successivamente per sbloccare usare:

$ eject -i off

oppure:

$ eject -i 0

nel caso si hanno due cdrom scegliere quale bloccare:

$ eject cdrom0 -i on

$ eject cdrom1 -i on

La storia finisce con il classico, " e tutti vissero felice e contenti " 🙂

Mcrypt-cifrare file

 

Questo è un piccolo trucchetto per cifrare velocemente un file. Come ho avuto modo di scrivere in passato per altri metodi

qua e qua,la sicurezza non è mai troppa, specialmente quando si scrivono su un file dei dati sensibili.

Quello che serve è Mcrypt:

# apt-get install mcrypt

quindi per cifrare un file usiamo questi comandi:

mcrypt -a blowfish nome_file

dove -a indica l’algoritmo di cifratura. Per la lista completa:

mcrypt --l

a questo punto sceglieremo una password che inseriremo due volte, e ci troveremo un file criptato con estensione .nc.

Adesso non rimane che distruggere l’originale:

shred -n 10 -u -z -v nome_file

per decifrare il file:

mdecrypt nome_file.nc

Tutto qua, per altre opzioni man mcrypt

 

Messaggio all'avvio del terminale

 

 

Questa è un semplice trucchetto per avere un messaggio all'apertura del terminale. La cosa simpatica è quella che il

messaggio ci apparirà come se in quel momento qualcuno lo stesse scrivendo con una macchina da scrivere.

Non bisogna fare altro che incollare alla fine di .bashrc quanto segue:

##Messaggio di benventuto
messaggio="Ciao edmond attento a quello che fai : ) "
nLettera=${#messaggio}
i=0
while [ "$i" -lt "$nLettera" ]
do
sleep 0.1
echo -n "${messaggio:$i:1}"
(( i += 1 ))
done
echo

dove sleep 0.1 indica in millisecondi il tempo di attesa per ogni lettera.

libgnomevfs-WARNING-Debian-Sid

 

Stasera mentre smanettavo un po su Sid, mi è capitato una cosa stranissima, tutto ad un tratto non sò come e perchè, non

riuscivo ad ottenere i privilegi di root. L’errore nel terminale era il seguente:

(gedit:4397): libgnomevfs-WARNING **: Unable to create ~/.gnome2 directory: No such file or directory
Could not create per-user gnome configuration directory `/root/.gnome2/’: No such file or directory

Dopo un po di sbattimenti sono riuscito a capire e a risolvere il problema, che era dato da una modifica (non so come sia

avvenuta) in /etc/passwd, dove root si trovava in /home/root anzichè in /root. A questo punto non mi rimaneva che dare un:

Ctrl-Alt-F1

nano /etc/passwd

e nella riga dedicata a root cancellare la voce /home. Spero sia utile a qualcuno. Enjoi 😉

 

Debtree-generatore grafico di dipendenze

 

Come da titolo Debtree è un generatore grafico di dipendenze, comodo per chi volesse graficamente farsi un idea sulle

dipendenze di uno specifico programma. Per ottenere il grafico Debtree si appoggia a Graphviz.  Per installarlo:

apt-get install graphviz

git clone git://git.debian.org/~fjp/debtree.git

a questo punto entriamo nella directory debtree, e proviamo a generare un grafico per dpkg:

cd debtree

./debtree --no-recommends --no-alternatives --max-depth=4 dpkg| dot -T png > grafico-dpkg.png

gnome-open grafico-dpkg.png

Oppure in alternativa:

./debtree dpkg > grafico-dpkg.dot

dot -T png -o grafico-dpkg.png grafico-dpkg.dot

gnome-open grafico-dpkg.png

A questo punto abbiamo il nostro grafico.

Enjoy .

 

Montare immagini (ISO,BIN,CUE,NRG,MDF,IMG/CCD,DAA) in Debian

Avere la possibilità di montare un file di immagine senza masterizzarlo a volte risulta molto comodo.

Ci sono diversi formati, e montarli è abbastanza semplice.

Immagine ISO:

mount -t iso9660 -o loop archivio.iso /directory/di/montaggio

 

Immagine BIN e Cue

Per poter montare questo tipo di immagine prima bisogna convertirla in ISO.

apt-get install bchunk

bchunk archivio.bin archivio.cue nuovoarchivio.iso

Una volta trasformato in ISO:

mount -t iso9660 -o loop archivio.iso /directory/di/montaggio

 

Immagine NRG

Non c’è bisogno di convertirla in ISO

mount -t iso9660 -o loop,offset=307200 immagine.nrg /directory/di/montaggio

Se si volesse convertire:

apt-get install nrg2iso

nrg2iso archivo.nrg nuovoarchivio.iso

 

Immagine MDFe MDS

Anche qua bisogna prima convertire in Iso

apt-get install mdf2iso

mdf2iso archivio.mdf nuovaimmagine.iso

 

Immagine IMG

Convertiamo in ISO

apt-get install ccd2iso

ccd2iso immagine.img immagine.iso

 

Immagine DAA

Il formato DAA è quello che utilizza  Poweriso. Anche in questo caso bisogna prima convertirlo in ISO.

wget https://poweriso.com/poweriso.tar.gz

tar -zxvf poweriso.tar.gz

convertiamo in ISO con:

./poweriso convert immagine.daa -o nuovaimmagine.iso

Tutti i formati di immagine convertiti in ISO, si montano con:

mount -t iso9660 -o loop archivio.iso /directory/di/montaggio

 

 

Amministrare la banda con Trickle

 

Trickle si incarica di limitare l’uso della banda sia in download che in upload di una applicazione specifica.

Questo può essere molto utile se nel contempo si volesse continuare a navigare senza avere la banda satura.

Si puo usare con programmi tipo: Deluge, Amule, apt-get upgrade ecc ecc. Trickle è presente nei repository Debian.

Esempio:

trickle -u 5 -d 12 apt-get upgrade

In questo caso si incarica di limitate apt-get upgrade in upload a 5 kbps  ed in download a 12 kbps,

oppure:

trickle -d 50 deluge

Deluge utilizzerà solo 50kbps. Per altre opzioni consultare il man.