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.

#!/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:

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

Script bash per il calcolo della spesa mensile

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

10 commenti » Scrivi un commento

  1. 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

  2. Leggendo lo script m’è venuta in mente la filastrocca “30 giorni ha novembre, con aprile giugno e settembre…” 🙂

  3. Pingback: RSS Week #80: letture per il weekend - Matteo Moro

  4. Pingback: Quante ore lavoro! - …time is what you make of it…

  5. Ciao Emanuele, il tuo script si avvicina a quello che mi servirebbe, ma non essendo ingegnere informatico non so come fare…
    Ci sarebbe un modo affinché ogni mese possa aggiungere una cifra mensile (es. 40) a una cifra di partenza (es. 150).
    Così dovrei avere 150+40+40+40… e così via ogni mese.
    Vorrei mettere questo conteggio sul mio sito web (wordpress) in modo che ogni mese restituisca il risultato, quindi avrei bisogno più di un plugin che di uno script in bash, ma credo di sbagliare le chiavi di ricerca (o forse non esiste?) perché non lo trovo!
    Ho provato con plugin spesa mensile, budget mensile, calcolatrice mensile, niente… mi sai indicare dove posso cercare qualcosa del genere?
    Iolanda

    • Oh ma che bravo A35G, io in questo periodo corro sempre e non avrei avuto tempo per convertire tutto. Grandissimo!
      iniminimainimo: ci fai sapere se ti risulta utile?! 🙂
      Ciao,
      Emanuele

Lascia un commento

I campi richiesti sono marcati con *.


Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.