pdr Aufruf
pdr akzeptiert Optionen und Argumente.
Hinweis:
Optionen können selbst Argumente haben, was nicht verwechselt
werden darf.
Optionen werden grundsätzlich durch ein Minuszeichen eingeleitet.
Ein zweites Minuszeichen kennzeichnet sog. lange Optionen. Alle
verfügbaren Optionen und Argumente können mit pdr -? oder pdr --help aufgelistet werden.
Optionen
-?
|
den Hilfebildschirm
anzeigen
|
-V
|
die pdr-Versionsnummer anzeigen
|
-v
|
Ausgaben machen, ist diese
Option nicht gesetzt, macht pdr nur dann Ausgaben, wenn Fehler
aufgetreten sind
|
-c
filename
|
die Datei filename als
Konfigurationsdatei benutzen, diese Option hat Priorität
gegenüber der standardmäßig benutzten
Konfigurationsdatei ~/.pdrx
|
-l
|
die momentan verfügbaren collections
auflisten
|
-a
"name,type[,purpose]"
|
eine collection hinzufügen,
das Argument ist eine Zeichenkette, die den Namen, den Typ und ggf.
eine verbale Beschreibung oder den
Zweck der neuen collection
angibt, als
Typen kommen in Frage n, r oder t (für numeric, ratio oder text)
|
-d name
|
eine collection löschen,
als Argument muß der Name übergeben werden
|
-D
|
alle collections löschen,
die collections * und # werden nicht gelöscht,
sie werden nur
geleert
|
-r
|
alle aktuellen rejections
auflisten
|
-R
|
alle aktuellen rejections
löschen
|
-e "expr"
|
die als Argument übergebene
Zeichenkette als Ausdruck betrachten und auswerten
|
-t
filename
|
eine Textdatei einlesen
|
-C
filename
|
eine CSV-Datei einlesen
|
-x
filename
|
eine XML-Datei einlesen
|
-n
|
keine in der Konfigurationsdatei
vorkonfigurierten
Datenquellen benutzen, nur die Kommandozeile
|
-i
|
die interaktive
Betriebsart
starten
|
-X filename
|
den Inhalt der gesamten
Datenbank in eine XML-Datei schreiben, das Format ist kompatible zum
Import über -x
|
Argumente
Alles, was hinter dem
Programmnamen
pdr auf der Kommandozeile
folgt und nicht mit einem Minuszeichen beginnt,
wird als Argument gewertet. Alle Argumente werden zu einem einzigen
Ausdruck zusammengefügt und gemeinsam
abgearbeitet:
$
pdr 5.2 5n 8l -v \; Kommentar bis zum
Ende der Zeile
Der resultierende Ausdruck lautet:
5.2 5n 8l ; Kommentar bis zum
Ende der Zeile
-v gehört nicht dazu,
dies ist eine erkennbare Option von pdr, sie wird nicht mit in den
Ausdruck übernommen. Der backslash
vor dem Semikolon ist eine Spezialität unter unixartigen
Betriebssystemen. Bei solchen wertet die shell
ihrerseits oft das Semikolon aus, was uns jedoch als
Kommentartrennzeichen dient. Um dies zu verhindern, muß man ihm
einen backslash voranstellen.
Dieser wird allerdings bereits von der jeweiligen shell entfernt und gelangt gar
nicht in die Eingabe von pdr.
Fallbeispiele
Wichtig sind die Optionen zur Handhabung von collections. -l
bzw. --list-collections
listet
zunächst alle vorhandenen collections
auf und liefert ein paar
statistische Daten:
$
pdr -l
name
type table recs
first
last
purpose
# text
C1 160 2008-11-25
18:45:00 2010-01-02 21:55:37 Kommentare
* numeric
C0 1636 2008-11-25
05:00:00 2010-01-03 12:10:00 Blutzucker
h numeric
C6 1
2009-05-19 16:00:00 2009-05-19 16:00:00 HbA1c
l numeric
C3 707 2008-11-25
05:00:00 2010-01-03 06:26:01 Basisinsulin
m numeric
C4 612 2009-03-04
05:00:00 2010-01-03 06:26:01 Tabletten
n numeric
C2 1275 2008-11-25
05:00:00 2010-01-03 12:10:00 Bolusinsulin
x numeric
C5 119 2009-03-22
09:28:09 2010-01-03 10:31:01 Experimentalmessungen
Diese Auflistung zeigt Name und Typ jeder collection, die physische
SQL-Tabelle in der Datenbank, die Anzahl
der dort befindlichen Zeilen,
d.h. Meßwerte sowie den Zeitstempel des ältesten und des
jüngsten Eintrags. Am Ende ist die jeweilige Beschreibung der collections zu sehen, sofern eine
angegeben wurde.
Mit -a bzw. --add-collection und einem
string-Argument läßt sich eine collection hinzugügen:
$ pdr -a "k,n"
$ pdr -l
name
type table recs
first
last
purpose
# text
C1 160 2008-11-25
18:45:00 2010-01-02 21:55:37 Kommentare
* numeric
C0 1636 2008-11-25
05:00:00 2010-01-03 12:10:00 Blutzucker
h numeric
C6 1
2009-05-19 16:00:00 2009-05-19 16:00:00 HbA1c
k
numeric
C7
0
l numeric
C3 707 2008-11-25
05:00:00 2010-01-03 06:26:01 Basisinsulin
m numeric
C4 612 2009-03-04
05:00:00 2010-01-03 06:26:01 Tabletten
n numeric
C2 1275 2008-11-25
05:00:00 2010-01-03 12:10:00 Bolusinsulin
x numeric
C5 119 2009-03-22
09:28:09 2010-01-03 10:31:01 Experimentalmessungen
Das Argument enthält den Namen der neuen collection, ein Komma und dahinter
den Typ in Form von n
(für numeric), r
(für ratio) oder t
(für text).
Eine nicht mehr benötigte collection
kann mit -d bzw. --delete-collection und dem
Namen der collection
gelöscht werden:
$
pdr -d k
Sämtliche collections
können mit -D bzw. --delete-all-collections
gelöscht werden. Die collections * und # bleiben dabei erhalten,
werden aber
geleert:
$
pdr -D
$ pdr -l
name
type table recs
first
last
purpose
# text
C1
0
Kommentare
* numeric
C0
0
Blutzucker
Zwei Optionen dienen
der Behandlung von rejections,
d.h.
zurückgewiesenen
Daten,
bei
denen
ein
erkennbares
Problem
vorlag,
aufgrunddessen
die
Daten
nicht
in
die Datenbank übernommen werden
konnten. Diese Daten gelangen dann in eine Schattentabelle. pdr liefert
beim Auftreten solcher Fehler eine Ausschrift:
at least one expression has been rejected, try -r to list rejections
Mit -r bzw. --list-rejections können
diese Daten nachträglich angezeigt werden:
$
pdr -r
timestamp
expression
2010-01-03 17:46:20 12.0k
(Fehler:
die
collection
k existiert nicht)
Wenn tatsächlich ein Schreibfehler vorliegt, kann die Eingabe
wiederholt werden. Nach erfolgter Korrektur aller rejections kann die Schattentabelle
geleert werden:
$
pdr -R
Die Option -e bzw. --expression erlaubt die Angabe
jeweils eines Ausdrucks, der zur Eingabe
benutzt wird:
$
pdr -e "5.2"
-e "2009-12-31 17:28:03 7.9"
Die Option kann mehrfach verwendet werden, was jeweils einen neuen
Ausdruck erfordert. Die Ausdrücke bleiben untereinander
unabhängig und werden einzeln verarbeitet.
Die Option -n bzw. --none erlaubt das
Außerkraftsetzen aller konfigurierten Datenquellen. Dies dient
dem Fall, daß der Benutzer in kurzer
Zeit mehrfach hintereinander Aufrufe des Programms tätigt, z.B. um
Eingaben über die Kommandozeile durchzuführen. Viele mail server melden dann
beispielsweise, daß
pro Minute nur eine bestimmte Anzahl an Logins durchgeführt werden
darf o.ä. Das ständige Herstellen der Verbindung kostet zudem
spürbar Laufzeit. Mit -n
arbeitet man ganz privat einfach auf der lokalen Datenbank.