summaryrefslogtreecommitdiff
path: root/info/examples/ltt/minijour.tex
blob: b0ca5a1a2ecf96d6907fdaa5cbbc5768074856a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
\documentclass[12pt]{minijour}

\begin{document}

\author{Ingo Kl"ockl}
\ausgabe{1}    % dies ist die Ausgabe 1/<aktuelles Jahr>
\maintitle{Shell-Programmierung}
\renewcommand{\ausgabename}{Sonderausgabe}
\impressum{Herausgeber Ingo Kl"ockl.\protect\\
  Das Titelbild zeigt eine Rosette, die manuell in
  PostScript programmiert wurde als Reminiszenz an die Pr"a-Corel-Zeit :-)}

\maketitle

In dieser Zeitschrift sollen Sie erfahren, wie Sie mit Perl, ohne ein Programm
zu schreiben, zahllose praktische Probleme l"osen k"onnen.
Sie stellt L"osungen f"ur kleinere Probleme vor, f"ur die man kein Programm
schreiben mu"s, da Perl auch mit einer einzigen Zeile direkt von der Shell aus aufgerufen werden kann,
und die man immer wieder brauchen wird -- und die im Vergleich zu gr"o"seren
Programmen sogar ungeahnt m"achtig sind.

Dieser Text steht auf derselben Seite wie das Inhaltsverzeichnis und kann
erg"anzende Informationen "uber die aktuelle Ausgabe enthalten.

% ---------------------
\article{Die Kommandozeilenoptionen}{Kommandozeilenoptionen}
 {Was tun mit den Perl-Schaltern}
 {Perl gestattet es, "uber Kommandozeilenoptionen sein Verhalten bis hin zum
  einzeiligen Aufruf hin zu variieren. Hier lernen Sie, wie's geht.}

Hier kommt der Text des Artikels. Er wird zweispaltig gesetzt, wie man es
von einer Zeitschrift gewohnt ist. Die hierdurch verringerte Spaltenbreite
kann beim Satz zu den bekannten Problemen beim Zeilenumbruch f"uhren.

% ---------------------
\article{Suchen und Ersetzen}{Suchen und Ersetzen}
 {Such- und Ersetzungsvorg"ange in mehreren Dateien ohne Editoraufruf}
 {Was tun, wenn in mehreren Dateien Zeichen zu ersetzen oder zu finden sind?
  Mit Perl k"onnen Sie alles auf einmal mit einer einzelnen Zeile erledigen!}

Eine der elementaren Aufgaben bei der Textbearbeitung und Programmierung ist
das Suchen und Ersetzen von Zeichenfolgen. Das Teilproblem des Suchens kann
dabei entweder innerhalb eines Editors gel"ost werden oder durch einen mehr
oder minder m"achtigen Suchbefehl des Betriebssystems, etwa \verb+search+
oder \verb+grep+. Nutzer von PCs unter Windows haben auch hierbei wieder das
Nachsehen in Form des durchaus minder m"achtigen \verb+find+ und m"ochten vielleicht
als erste mehr M"oglichkeiten zur Verf"ugung gestellt bekommen.

Sehen wir, was Perl nun zu diesem Thema, zun"achst des Suchens, zu bieten hat.
Betrachten Sie die folgenden Zeilen
\begin{verbatim}
perl -ne "print if /bla/" datei
perl -ne "print $ARGV." ".$_ 
                if /bla/" datei
\end{verbatim}
Beide Zeilen suchen in der Datei \verb+datei+ nach dem Begriff \verb+bla+,
wobei die Dateien grunds"atzlich zeilenstrukturiert sind.


% ---------------------
\article{Zeilen bearbeiten}{Zeilen bearbeiten}
 {Zeilen numerieren, St"ucke extrahieren und mehr}
 {Der Artikel behandelt die M"oglichkeiten, Dateien zeilenweise zu bearbeiten,
  um Zeilennummern voranzustellen oder zu entfernen, oder Bereiche zu
  extrahieren.}
Nach der "Uberschrift und der Einleitung kommt der eigentliche Artikeltext.

% ---------------------
\article*{Ein Zeilenwrapper}
Und hier sollte auch etwas stehen. In der beispielhaften K"urze
ist dies jedoch nur ein Beispiel f"ur einen Artikel ohne Numerierung 
und Eintrag in die Verzeichnisse.

\end{document}