Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Online Artikel  »  leser_sprachen  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

Awk

"Die naheliegenste und einfachste Lösung für diese Aufgabe ist doch (n)awk", dachte sich Daniel Werner aus der Schweiz. Seine Lösung lässt klassische Unix-Programmiersprache von Aho, Kernighan und Weinberger zu Erhen kommen, die für das Umordnen und Sortieren von Textdaten gemacht ist.

Das Awk-Skript benutzt eigene Token für die eckigen Klammern um die Fußnoten:

#!/usr/bin/awk -f

# Initialisierung
#
# "lbrk" und "rbrk" werden als temporäre Ersatzstrings für die 
# eckigen Klammern benutzt, wenn die originalen Fussnoten ersetzt 
# werden, um doppelte Ersetzungen zu verhindern. Am Schluss werden 
# diese Strings wieder durch die eckigen Klammern ersetzt. 
BEGIN {
  maintext=1;
  count=1;
  lbrk="a192aedadac29bdc8ec296f267222d17"
  rbrk="8ea03e15e3312e78ce9278b05acd1af0"
}
/a192aedadac29bdc8ec296f267222d17/ {
  print "lbrk ist im Text enthalten, bitte Skript anpassen...";
  exit;
}
/8ea03e15e3312e78ce9278b05acd1af0/ {
  print "rbrk ist im Text enthalten, bitte Skript anpassen...";
  exit;
}
[...]

Daniel Werners Awk-Programm steht zum Download und Ausprobieren bereit.

Tcl

Eine Lösung in der Skriptsprache Tcl stammt von Gerhard Reithofer aus Graz in Österreich. Sein Skript kennt einige Optionen, die er im Quelltext übersichtlich dokumentiert hat:


Usage: tclsh reorder [debug] [sortopt] [memopt] infile [outfile]

sortopt: none .. footnotes are rebuild in order as they appear in
                  footnote list (1..n)
          -t .... footnotes are renumbered as they appear in text,
                  order of footnotes in list is preserved
          -f .... footnotes are renumbered as they appear in text,
                  footnotes list is reordered also
memopt:   none .. file is preprocessed line by line
          -m .... complete file is read into memory at begin, 
                  no check for existing memory is done
debug:    -d .... displays timing values for various program parts

infile: ......... name of input file, not checked (exit, readable...)
outfile: ........ name of output file, will be overwritten without 
                  confirmation, default is stdout

Beim Testlauf mit der umfangreichen Datei sample4.txt fiel dem Tcl-Programmierer auf, dass es auch Referenzen gibt, die in der Fußnotenliste überhaupt nicht auftreten. Prompt passte Reithofer sein Skript an, das nun solche Fälle mit einer Warnung quittiert:

$ ./reorder-0.2.tcl -d -m ../sample4.txt  sample4.sort
reading file to mem 23120064 microseconds per iteration
preproc. footnotes  27460209 microseconds per iteration
Warning: found unreferenced entry [958378] in line 1!
Warning: found unreferenced entry [958378] in line 606593!
processing text     108664713 microseconds per iteration
writing footnotes   130460181 microseconds per iteration
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Django-Video-Workshop von Douglas Napoleone Django-Video-Workshop von Douglas Napoleone
Mit Frischesiegel Der aufgeräumte Weg zu GTK+ 3.0
Preise, Patente, Perl Oscon 2006 in Portland, Oregon
Ziemlich verteufelt Report: FreeBSD - Historie, Kernel, Lizenzen, Software, Philosophie
Asyl für Django Webprogrammierung in Python/Django und PHP
Linux-Däumling Open WRT auf dem Ben Nanonote
Whitepaper
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele

Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Kommentare (0)