Script bash per il totale della propria spesa mensile :o)
Era fine mese, dovevo tirar le somme delle mie spese mensili e non mi andava – minimamente – di prender la calcolatrice e iniziare a scrivere le cifre, una per una col rischio di saltarne qualcuna, così ho aperto un editor di testo e ho scritto questo misero script in bash per calcolare la spesa totale.
1 2 3 4 5 6 7 8 | #!/bin/sh cat ~/Documents/spesa_mensile.txt | awk -F€ '/^[^a-z,A-Z].[^+]*$/ { spesa += $1 } { if(NR==1) mese=$1 if (mese == "NOVEMBRE" || mese=="APRILE" || mese=="GIUGNO" || mese=="SETTEMBRE") giorni="30" if (mese == "FEBBRAIO") giorni="28" else giorni="31" } END { print "La somma per il mese di", mese, "è", spesa, "€...\nLa spesa media è di", spesa/giorni,"€ al giorno." }' |
Ogni mese mi basta scrivere un file in questo modo:
1 2 3 4 5 6 7 | FEBBRAIO 0,10 € Busta lettera 0,60 € Francobollo 4,5 € Carne 11,65 € Spesa GS 0,80 € Pane 5 € benzina Vespa |
Il risultato è a portata di shell…

Il fatto è che un ingegnere informatico non prende la calcolatrice. La crea.
Emanuele
PS: se volete usarlo tenete a mente che la prima riga va riservata al mese (lo script la usa per riconoscere i giorni di cui è composto per effettuare la media) per il resto potete scrivere ciò che volete basta che usate quell’ordine e che nominiate il file spesa_mensile.txt

Archivio
4 commenti - Partecipa alla conversazione sotto »
Eh già… purtroppo gli ingegneri, ed in particolar modo gli informatici, sono proprio così.
Un po’ fanno “paura”, e un po’ vorresti quasi essere come loro che riescono a farsi un programmino per tenere tutto sotto controllo
Saluti da Milano!
Omonimo
Commento scritto da Emanuele il 1 marzo 2010 alle 13:45
Leggendo lo script m’è venuta in mente la filastrocca “30 giorni ha novembre, con aprile giugno e settembre…” :)
Commento scritto da camu il 1 marzo 2010 alle 20:53
Beh io quella filastrocca l’ho usata proprio per ricordarmi quali mesi inserire nello script…!
Ciao,
Emanuele
Commento scritto da Emanuele il 1 marzo 2010 alle 21:56
[...] Script bash per il totale della propria spesa mensile [...]
Commento scritto da RSS Week #80: letture per il weekend - Matteo Moro il 7 marzo 2010 alle 14:38