pdr Refeenz Index pdx Aufruf

pdr Interaktiver Betrieb

pdr besitzt eine interaktive Betriebsart, die das Editieren, Ergänzen und Löschen von bereits in der Datenbank befindlichen Datenwerten erlaubt. Dies ist sehr nützlich einerseits zur Korrektur von Fehlern, andererseits zum nachträglichen Anbringen von Kommentaren und weit einfacher und komfortabler als die manuelle Ausführung von SQL-Statements in der Datenbank.

Die interaktive Betriebsart wird über den Kommandozeilenparameter -i eingeschaltet:

$ pdr -i
pdr 0.3.7, interactive mode (press ? for help)
2010-03-03 12:38:01 6.2 1m 6n                       >

Das Symbol rechts ist ein Prompt. pdr wartet auf Eingaben. Auf der linken Seite der Zeile wird die letzte, d.h. jüngste Datenzeile ausgegeben, die der Benutzer zuvor über eine Eingabe erzeugt hat. Man kann nun mit Hilfe von Navigationskommandos seinen Datenbestand Zeile für Zeile durchlaufen und dabei Manipulationen an den Daten vornehmen. Es stehen folgende Kommandos zur Verfügung:

-
zur vorhergehenden, nächst älteren Zeile springen

+
zur nachfolgenden, nächst jüngeren Zeile springen

^
zur ersten, ältesten Zeile springen

$
zur letzten, jüngsten Zeile springen

RET
die letzte Navigation wiederholen

D[collection+]
eine oder mehrere Teilausdrücke auf der aktuellen Zeile löschen, die Teilausdrücke werden in Form der collection-Namen angegeben, die durch Leerzeichen getrennt werden, werden keine collection-Namen angegeben, wird die gesamte Zeile gelöscht, Beispiele:
D
D a b c

expression
die aktuelle Zeile um den angegeben Ausdruck erweitern, besitzt die Zeile bereits Datenwerte in collections, die auch in dem neuen Ausdruck vorkommen, so erfolgt einer Aktualisierung, d.h. ein Überschreiben dieser Datenwerte, anderenfalls ein Einfügen, der Zeitstempel der Zeile kann nicht geändert werden

TAB
den Ausdruck der aktuellen Zeile vollständig in die Eingabe übernehmen, dies ist nützlich zur Korrektur ggf. längerer Kommentare, die man nicht in voller Länge neu eintippen möchte

?
einen Hilfebildschirm ausgeben

q
die interaktive Betriebsart und pdr beenden

Beispielsitzung:

$ pdr -i
pdr 0.3.7, interactive mode (press q to quit)
2010-03-03 12:38:01 6.2 1m 6n                       > -
2010-03-03 08:13:32 5.7 1m 6n 7l                    > Dm
2010-03-03 08:13:32 5.7 6n 7l                       > ; Kommentar
2010-03-03 08:13:32 5.7 6n 7l ; Kommentar           > D ; l n
2010-03-03 08:13:32 5.7                             > D
2010-03-02 22:10:56 5.8 10l                         > 12l 80.3k
2010-03-02 22:10:56 5.8 12l 80.3k                   > +
2010-03-03 12:38:01 6.2 1m 6n                       > q
$


Seit release 1.2.0 erscheinen auch die rejections in interaktiven Betriebsart:

$ pdr
connecting to database
checking schema
looking for mail (IMAP)
    [2010-12-09 17:15:21] 1.2.3.4.5
disconnecting from database
*** warning: !!! at least one expression has been rejected, try -r to list rejections !!!

$ pdr -i
connecting to database
checking schema
pdr 1.2.0, interactive mode (press ? for help)
2010-12-09 17:15:21 !!! rejected !!! 1.2.3.4.5      >
2010-12-09 17:06:40 98.1* 34.2k                     >
2010-12-09 16:35:14 1.2* 5k 3.4n                    > q
disconnecting from database
$

Die zurückgewiesene Eingabe kann nun nach Belieben editiert oder mit dem D-Kommando gelöscht werden. Konnte die Eingabe korrigiert werden, so dass tatsächlich ein syntaktisch korrekter Ausdruck entstand, so wird dieser anschliessend in den Datenbestand übernommen und aus den rejections entfernt.


pdr Referenz Index pdx Aufruf