From b65e8a11703d34c30b0c37d326ff962767b320a9 Mon Sep 17 00:00:00 2001 From: gandalf Date: Wed, 17 Mar 2021 16:13:12 +0100 Subject: [PATCH] Interface and Data Collection No Data Processing yet --- .env | 1 + .gitignore | 5 +++++ README.md | 3 +++ erinnermich-collect.sh | 41 +++++++++++++++++++++++++++++++++++++++++ erinnermich.sh | 0 5 files changed, 50 insertions(+) create mode 100644 .env mode change 100644 => 100755 erinnermich-collect.sh mode change 100644 => 100755 erinnermich.sh diff --git a/.env b/.env new file mode 100644 index 0000000..2995361 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +FINDPATH=$HOME/Dokumente diff --git a/.gitignore b/.gitignore index 9fa2a16..69141d7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,8 @@ +# Custom entries +.erinnermich.csv +.erinneralle.csv + + # ---> Linux *~ diff --git a/README.md b/README.md index 6162090..5852f0d 100644 --- a/README.md +++ b/README.md @@ -24,12 +24,15 @@ Sammelt bei jedem Rechnerneustart (`cron@boot`) aus der gesamten Dateistruktur a Markdown-formatierte Übersicht. Oder ein anderes Format? An sich könnte er das auch per `LaTeX` oder als `svg` in das Hintergrundbild schummeln… Holt sich die Aktenzeichen aus `DECKBLATT.csv` +Durchsucht standardmäßig `/home/user/Dokumente/`, Änderungen daran können in `.env` vorgenommen werden. + Optionen: * `-o md|pdf|csv|?` Ausgabeformat. Default ist `md` * `-f future|past|all` Ausgabe von Fristen, default ist `future` * `-t future|past|all` Ausgabe von Terminen, default ist `future` * `-w future|done|open|all` Ausgabe von Wiedervorlagen, default ist `open`: Stichtag ist vorbei, aber noch nicht als bearbeitet vermerkt. * `-m, --merge` Fristen, Termine und Wiedervorlagen in eine Tabelle sammeln. Default sind drei eigene Tabellen in einer Datei. +* `-a` äquivalent zu `-t all -f all -w all`. Überschreibt vorherige `-t`, `-w`, `-f` (und wird von späteren überschrieben) ## Ausgabe diff --git a/erinnermich-collect.sh b/erinnermich-collect.sh old mode 100644 new mode 100755 index e69de29..afec9db --- a/erinnermich-collect.sh +++ b/erinnermich-collect.sh @@ -0,0 +1,41 @@ +#! /usr/bin/env bash + +#Prepare Flags and Variables +OF="md" +FF="future" +WF="open" +MF=false +TF="future" +ARGS=($@) +FILES=() +BASEPATH=$(dirname $(realpath $0)) +. .env # FINDPATH + +#Read command line input +for (( ARG=0; ARG<$#; ARG++ )) +do + VAL=${ARGS[$ARG]} + case $VAL in + "-m") MF=true;; + "-f") FF=${ARGS[$ARG+1]};; + "-w") WF=${ARGS[$ARG+1]};; + "-t") TF=${ARGS[$ARG+1]};; + "-a") TF="all"; WF="all"; FF="all";; + "-am") TF="all"; WF="all"; FF="all"; MF=true;; + esac +done + +#find data +FILES=$(find $FINDPATH -iname ".erinnermich.csv") + +#collect data into one file +echo "date,type,handle,done,comment" > .erinneralle.csv # Lösche Sammeldatei und lege Kopfzeile an +for FILE in $FILES +do + if [[ $(head -n 1 $FILE) =~ "date,type,handle,done,comment" ]] + then + echo $FILE + tail -n +2 $FILE >> $BASEPATH/.erinneralle.csv + fi +done + diff --git a/erinnermich.sh b/erinnermich.sh old mode 100644 new mode 100755