Commenti recenti

[Guida] Ubuntu 11.10 – Creare associazioni di file personalizzate su Oneiric Ocelot

 

[Guida] Ubuntu 11.10 Come creare associazioni di file personalizzate su Oneiric Ocelot

Formulari e Guide

 

 

 

 

Ho iniziato ad inserire dei vecchi formulari di Matematica nella sezione Formulari e Guide, se trovate errori o avete suggerimenti segnalatelo nei commenti di questo articolo!

 

Thunderbird su Ubuntu: usare gli ultimi articoli del blog WP come firma

thunderbird-logoPremessa: la guida si riferisce a Ubuntu Linux e Thunderbird 7, ma può essere adattata ad altre distro e versioni del programma.

Vediamo come si fa ad inserire un link ad uno degli ultimi articoli del proprio blog nella firma di Mozilla Thunderbird.

 

 

 

Per prima cosa creiamo un file di testo contenente la firma “base” che vogliamo utilizzare in Mozilla Thunderbird, nel mio caso è la seguente:

*/Willy/* - *Contatti*: http://snipurl.com/contatti
* *FAQ* di /it-alt.comp.software.mozilla/: http://www.FAQmozilla.org
* *Gratuiki* - Software Free: http://gratuiki.willygroup.org

Salviamo il file in una posizione a cui possiamo accedere tranquillamente, ad esempio la cartella Documenti della nostra home: /home/UTENTE/Documenti/firma_no_blog.txt 1

Facciamone altre due copie e rinominiamole così: firma.old.txt e firma.txt

Lanciamo Mozilla Thunderbird ed andiamo a configurare la firma in Mozilla Thunderbird facendola puntare al nostro file firma.txt

Adesso siamo pronti per scrivere lo script, io solitamente creo gli script in una cartella all’interno della home e poi creo un link simbolico in /usr/local/bin che punta al file dello script

Supponiamo di aver salvato il file che conterrà il nostro script nella posizione: /home/UTENTE/Documenti/Script/feed per prima cosa lo rendiamo eseguibile, da terminale:

chmod +x /home/UTENTE/Documenti/Script/feed

Quindi andiamo a creare il collegamento all’eseguibile:

sudo ln -fs /home/UTENTE/Documenti/Script/feed /usr/local/bin/feed

Ora apriamo il file feed con un editor di testo (gedit/medit vanno benissimo, altrimenti se volete operare da terminale potete usare vi, nano o quello che più vi piace), ed inseriamo il codice:

#!/usr/bin/env bash
# File temporaneo dove verrà salvato il feed
FILE="/tmp/blogfeed.txt";
# Indirizzo del Feed RSS da utilizzare
FEED="http://blog.willygroup.org/feed"
# Numero degli ultimi post che si vogliono linkare :: "Inserisci un post a caso tra gli ultimi 5"
NUM_POST=5

# FILE TEMPORANEI PER TITOLI E LINK
TMP_TITOLI="/tmp/titoli.txt"
TMP_LINK="/tmp/link.txt"
# Nome utente
UTENTE="willy"

#Crea copia backup della firma
cp "/home/$UTENTE/Documenti/firma.txt" "/home/$UTENTE/Documenti/firma.old.txt"

# Recupera il feed del blog
    wget -O $FILE $FEED

# Controlla se ci sono stati problemi durante il download e quindi se il file risulta vuoto
if [ ! -s $FILE ]
then
    # In caso di file vuoto ripristina l'ultima firma
    cp "/home/$UTENTE/Documenti/firma.old.txt" "/home/$UTENTE/Documenti/firma.txt"
else

    RIGA=`echo $RANDOM%$NUM_POST | bc`
    RIGA=`expr $RIGA + 1`
    xmlstarlet sel -t -m '//item' -v 'title' -n $FILE > $TMP_TITOLI
    xmlstarlet sel -t -m '//item' -v 'link' -n $FILE > $TMP_LINK

    rm /home/$UTENTE/Documenti/firma.txt
    cp /home/$UTENTE/Documenti/firma_no_blog.txt /home/$UTENTE/Documenti/firma.txt

    # Recupero Titolo e link
    TITOLO=$(head -n $RIGA $TMP_TITOLI | tail -n 1);
    LINK=$(head -n $RIGA $TMP_LINK | tail -n 1);
    # Utilizzo un servizio online per creare link corti: goo.gl
    SHORTLINK=$(curl -s -d '&url='$LINK http://goo.gl/api/url | sed -e 's/{"short_url":"//' -e 's/","added_to_history":false}/\n/');

    # Accodo titolo e link corto alla firma base
    echo "* $TITOLO: $SHORTLINK" >> /home/$UTENTE/Documenti/firma.txt;
fi

Il precedente codice è un po’ rozzo, critiche e consigli sono ben accetti.
Per eseguire lo script basta lanciare da terminale:

feed

Se vogliamo che questo script venga lanciato ogni tot minuti, ad esempio 20, dobbiamo scomodare la funzione cron di Unix, da terminale:

crontab -e

e quindi inseriamo sotto a:

# m h  dom mon dow   command

la riga:

*/20 * * * * /usr/local/bin/feed

Ed abbiamo finito!

 

Note:

  1. sostituire a UTENTE il proprio username