From 391e61f9ea7a775ee42f5d282d77296083ac5b2c Mon Sep 17 00:00:00 2001 From: Augusto Gunsch Date: Sun, 29 Aug 2021 11:14:57 -0300 Subject: [PATCH] Add fsub script --- local/bin/fsub | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 local/bin/fsub diff --git a/local/bin/fsub b/local/bin/fsub new file mode 100755 index 0000000..4a56445 --- /dev/null +++ b/local/bin/fsub @@ -0,0 +1,49 @@ +#!/bin/sh +set -e + +FSUBRC=~/.config/fsubrc + +usage() { + echo "usage: fsub " + echo "fsub expects $FSUBRC to have a blacklist of words" + exit 1 +} + +[ -z $1 ] && usage +[ -f $1 ] || usage +[ -z $2 ] || usage +[ -f $FSUBRC ] || touch $FSUBRC + +cp $1 $1.bak +awk ' +BEGIN { + n = 1 + i = 0 + while(getline < "'$FSUBRC'") { + blacklist[i] = $0 + i++ + } +} +/^[[:digit:]]+[[:space:]]*$/ { + getline + time = $0 + + linen = 0 + while(getline) { + lines[linen] = $0 + linen++ + if($0 ~ /^[[:space:]]*$/) break + } + + for(j = 0; j < i; j++) + for(k = 0; k < linen; k++) + if(lines[k] ~ blacklist[j]) next + + print n + n++ + print time + for(j = 0; j < linen; j++) + print lines[j] +}' $1 | sed 's/\r//' > /tmp/fsub +mv /tmp/fsub $1 +rm $1.bak