aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ledgerscripts/get_categories.pl18
1 files changed, 18 insertions, 0 deletions
diff --git a/ledgerscripts/get_categories.pl b/ledgerscripts/get_categories.pl
new file mode 100644
index 0000000..fc4fa96
--- /dev/null
+++ b/ledgerscripts/get_categories.pl
@@ -0,0 +1,18 @@
+#!/usr/bin/env perl
+#
+# This groups a transaction description to an expense category
+# and prints to STDOUT to piping and or filtering elsewhere.
+#
+# The objective is for the output file to be used as a reference
+# for another script which applies expense categories to new
+# unprocessed budget files automatically.
+
+use strict;
+use warnings;
+
+local $/ = ""; # switch to paragraph mode (allow use of /m modifier below)
+
+while (<>) {
+ if (/\d{4}.*\* (.*)$/m) { print $1 . "@" };
+ if (/Expenses:(.*)£/) { print $1 . "\n" };
+}