changeset 492:25e92f9cf011

bin/budget.sh
author Jeff Hammel <jhammel@mozilla.com>
date Sun, 11 Aug 2013 04:03:13 -0700
parents 7325974b1eff
children 983f9d4fd4e8
files bin/budget.sh
diffstat 1 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/budget.sh	Sun Aug 11 04:03:13 2013 -0700
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+# from http://c2.com/doc/expense/
+
+exec awk ' $1 ~ /^[A-Z]+[A-Z0-9]*$/ { if (sums[$1] == "" || $1 == "SUM") { sums[$1] = sum # Define Symbol $1 = sum sum = 0 } else { $1 = sums[$1] # Dereference Symbol } } ($1+0) != 0 {$1 = sprintf("%7.2f", $1)} # Pretty Print {print} $2 == "*" {$1 *= $3} # Explicit Calculations $2 == "/" {$1 /= $3} $2 == "DB" {$1 = -$1} $2 == "CR" {$1 = -$1} NF == 0 {sum = 0} # Implicit Summation {sum += $1} ' $1
\ No newline at end of file