tx (484B)
1 #!/bin/sh 2 3 txfile="$HOME/prv/txs" 4 5 print_tx(){ 6 awk -v var="$1" -v var2="$2" -v var3="$3" -F ',' ' 7 $2 ~ var && tolower($0) ~ var2 && tolower($0) ~ var3{ 8 total += $2 9 printf "%s\t%s\t%12.2f\t%12s\t%s\n", NR, $1, $2, $3, $4 10 } 11 END { 12 if(total) { 13 printf "\t\t\t%12+.2f\n", total 14 } else { 15 exit 1 16 } 17 } 18 ' < "$txfile" 19 } 20 21 case "$1" in 22 e|expenses) print_tx "^-" "$2";; 23 r|revenue) print_tx "^[0-9]" "$2";; 24 *) print_tx "^" "$1" "$2" | tail -100;; 25 esac