From 73e7359c635577ff506c6fd8a1321c99eefc183d Mon Sep 17 00:00:00 2001 From: Trey Blancher Date: Wed, 27 Dec 2017 10:11:11 -0500 Subject: [PATCH] Added '--' to grep calls to protect patterns --- do_process | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100755 do_process diff --git a/do_process b/do_process new file mode 100755 index 0000000..545e088 --- /dev/null +++ b/do_process @@ -0,0 +1,58 @@ +#!/bin/bash + +ORGS=() + +if [[ "x${1}" == "x" ]]; then + DATE=$(date +%F) +else + DATE=$1 +fi + +if [[ -f ${DATE}.log ]]; then + get_list_of_orgs () { + orgs=$( grep -Po "\s+\[.*\]" | tr -d '[][]' ) + for org in ${orgs}; do + org="${org##*( )}" # trim leading whitespace + org="${org%%*( )}" # trim trailing whitespace + [[ "${ORGS[@]}" =~ "${org}" ]] || ORGS+=("${org}") + done + } + + get_list_of_orgs < ${DATE}.log + + for (( i=0; i < ${#ORGS[@]}; i++ )); do + echo "ORGS[$i]=${ORGS[$i]}" + done + + #for org in "${ORGS[@]}"; do + # echo ${org} + #done + + echo "--" + echo ${DATE} + echo + echo + echo + WHOLE="" + for pattern in "${ORGS[@]}" meeting; do + #echo "pattern=${pattern}" >&2 + if [[ "${pattern}" == "meeting" ]]; then + grep -- "${pattern}" ${DATE}.log | grep -Ev -- "${WHOLE}" | timetracker + else + grep -- "${pattern}" ${DATE}.log | timetracker + fi + echo + if [[ "${WHOLE}x" == "x" ]]; then + WHOLE="${pattern}" + else + WHOLE="${WHOLE}|${pattern}" + fi + echo + done + grep -Ev -- "${WHOLE}" ${DATE}.log | timetracker + echo + timetracker ${DATE}.log | grep "Section" | sed 's/Section/Grand/' + +else + echo "${DATE}.log does not exist" >&2 +fi