[EN] Bash scripts & Apple Mail (.emlx files)

04/10/2010

Introduction
Apple Mail 3.6 is the default e-mail client for Mac OS X Leopard. It’s a very good client, with tons of unique features (such as smart folders) but if you need to go advanced, well… you need the power of Bash shell and some command-line kung-fu.

The really cool stuff about Apple Mail is that it saves e-mails as multiple .emlx files (one .emlx file = one e-mail), instead of compressing all your mailbox inside a big, chunky, bloated .mbox file like many other clients do. The .emlx approach slows up a lot Apple Mail when you get a big mailbox (20000+ mails), but it’s easy to deal with it via Bash scripts.

I made four handy Bash scripts to deal with Apple Mail. The posts are written in italian, but the sourcecodes (comments, error messages, variable names..) are written in english. You have to provide the path to your mailbox folder to some of these scripts , so change the “mail_folder” variable according to your needs before executing the scripts. To run the scripts, launch the Terminal and type something like (change the script name according to your needs):


chmod +x mail2topwordlist.sh
sh mail2topwordlist.sh

Leggi il seguito di questo post »


[IT] Il comando uptime in MS-Dos: l’ennesima porcata made in Microsoft

19/09/2010

Da utente con un buon background *NIX, ricavare l’uptime (il tempo di funzionamento del sistema dall’ultima accensione) di una macchina per me è sempre stato sinonimo di apertura del Terminale e immissione del comando “uptime“.

Semplice, veloce, facile da memorizzare, facile da adoperare negli scripts e soprattutto universale.

Ma su MS-Dos, brutta copia delle shell *NIX, anche le operazioni così semplici diventano fonte inesauribile di bestemmie, e dimostrano, per l’ennesima volta, quanto i software Microsoft siano stati prodotti senza un’efficiente pianificazione su carta prima della stesura del codice.
Leggi il seguito di questo post »


[IT] Bash: come interfacciarsi con Apple Mail via script (Mac OS X Leopard) – Parte 4/4

04/09/2010

Parte 1/4, Parte 2/4, Parte 3/4

Introduzione:

L’ultimo script che vi presento non si interfaccia direttamente con Apple Mail, bensì funge da strumento di supporto al primo script,trasformando il file CSV prodotto da quest’ultimo in un “cloud text”, ovvero in un file di testo da usare per ricavare un tag cloud.

Lo script csv2cloudtext.sh:
Mettiamo caso che abbiate a disposizione una lista di parole e la relativa ricorrenza, nella forma:

inutile,5
microcefalo,3
tronista,2
violenza,1

e desideriate automaticamente ricavarne un file di testo strutturato come segue:

inutile
inutile
inutile
inutile
inutile
microcefalo
microcefalo
microcefalo
tronista
tronista
violenza

da incollare in servizi come Tagcrowd.com (quello che adopero io) per ricavarne un ben più leggibile tag cloud, ovvero una nuvola grafica in cui le parole vengano evidenziate in proporzione alla loro ricorrenza.

Ecco, il mio script fa esattamente questo.
Leggi il seguito di questo post »


[IT] Bash: come interfacciarsi con Apple Mail via script (Mac OS X Leopard) (Mac OS X Leopard) – Parte 3/4

31/08/2010

Parte 1/4, Parte 2/4

Introduzione:
Quello che vi propongo oggi è lo script più “raw” della collezione: funziona ma necessiterebbe di alcune rifiniture ulteriori, che non sono esattamente semplici da mettere in atto per caratteristiche intrinseche della shell Bash e del formato .emlx. Ad ogni modo, ho deciso di condividerlo comunque, perchè girando sulla Rete mi sono reso conto che nessuno ha sviluppato una soluzione del genere finora.

Lo script mail2book.sh:
Mettiamo caso che riceviate/inviate una serie di e-mail il cui titolo inizi con la stessa stringa, a mò di etichetta, per esempio: “[Pink News]“:

[Pink News] Puntata #1
[Pink News] Puntata #2
[Pink News] Puntata #3
[Pink News] Puntata #4
[Pink News] Bonus estate

Tutte queste e-mail (titolo + corpo) volete raggrupparle in un unico file di testo, proprio a mò di libro.
Leggi il seguito di questo post »


[IT] Bash: come interfacciarsi con Apple Mail via script (Mac OS X Leopard) – Parte 2/4

25/08/2010

Parte 1/4

Introduzione:
Dopo lo script Bash che estrae tutte le parole dal corpo delle vostre email e genera una lista delle parole più usate presentato nella prima parte, vado ora ad illustrarvi un secondo script, che svolge un altro compito decisamente utile chi usa intensamente Gmail (leggere: Tutorial: come creare una newsletter e/o una mailing-list gratuitamente e velocemente usando GMail).

Lo script mail2subjectslist.sh:
Vi siete mai chiesti quali sono le e-mail dal titolo più ricorrente nella vostra casella di posta? Oppure le e-mail che generano più risposte (replies)? Se sì, questo script vi solleticherà il palato.
Leggi il seguito di questo post »


[IT] Bash: come interfacciarsi con Apple Mail via script (Mac OS X Leopard) – Parte 1/4

22/08/2010

Introduzione:
Sulla mia macchina Mac OS X Leopard uso Apple Mail come client di posta, perchè ha una serie di funzioni (come le smart folders) e chicche di usabilità che altri client si sognano. Ma quando avete esigenze che esulano da quelle standard, come nel mio caso (ma va? quando mai!), bisogna ricorrere ad altri strumenti per portare a compimento il lavoro. Nel mio caso, lo strumento da me scelto è la mia amata (e immensamente potente) shell Bash.

La Apple per il suo client Mail ha scelto un approccio diverso da tutti gli altri client sulla piazza: la posta scaricata, infatti, non viene tutta compressa in un unica, elefantiaca mailbox e salvata nel comunissimo formato .mbox, bensì ogni e-mail viene salvata in un file .emlx a sè stante. Se questa scelta da un lato ha lo svantaggio di rallentare parecchio il software nella gestione di caselle di 20000+ email, di contro rende semplicissimo usare strumenti di terze parti per interfacciarsi con la posta scaricata da Mail.

Un file .emlx, infati, non è altro che un comune file di testo contenente tutte le informazioni relative ad una e-mail, nè più nè meno. Provate ad aprirne uno con TextEdit (o altro editor a scelta) e vi renderete conto da soli che non vi sto imbarcando di cazzate :)

I quattro scripts che vi illustrerò in questa serie di tutorial servono tutti a trasformare le mail ricevute in una serie di dati utilizzabili ai fini statistici e/o per levarsi qualche curiosità :-) Per non “sporcare” i risultati è quindi consigliabile ripulire la propria casella con Mail (a mano o usando apposite smart folders) da e-mail inutili, come possono essere spam, pubblicità varie, newsletter etc. Se non si vogliono eliminare, si possono spostare temporaneamente da Posta In Arrivo in un altra cartella, per poi ripristinare il tutto quando lo script ha terminato il suo lavoro.

Lo script mail2topwordslist.sh:
Vi siete mai chiesti quali sono le parole più ricorrenti nei vostri scambi epistolari? Se la risposta è affermativa, il primo dei quattro esempi di interazione Apple Mail / Bash che voglio mostrarvi vi verrà molto comodo.
Leggi il seguito di questo post »


[EN] Netaudio Diagrams: November 2008

19/11/2008

Since this post (english version here thx to embe ;)) I fixed many genre tags inside my library (“Electronic” was a too much generic tag in the most of the cases), I wrote a custom Bash script to do the iTunes Lbrary.xml to CSV conversion and I did some diagrams using Apple Numbers.

The diagrams and the tables are based on my personal library of 43.057 netaudio tracks (316 Gb) and they are very accurate. Anyway, I promise you I will keep finetuning the datas for the next diagrams (I want to reduce that “Misc” value).

I wrote a custom Bash script to retrieve datas because the Songbird plugin I used before (called Metrics) has not been ported to Songbird 7.0 yet, and because my script+Numbers combo is a lot faster and more customizable than Songbird+Metrics combo.

Ok, I wrote enough shit :) Give a look to the diagrams and leave a comment ;)

Leggi il seguito di questo post »


Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 77 follower