<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<link rel="SHORTCUT ICON" href="../bilder//pl.ico">
<title>Einführung </title>
</head>
<body bgcolor="#ffffff">
<hr>
<h1 align="center">Einführung</h1>
<table align="center"><tr>
<td><a href="perl_inhalt.html"> <img src="../bilder//perl_links.gif" alt="[ vorherige Seite ]" width="43" height="30" border="0"></a></td>
<td><a href="../perl-tutorial.html"> <img src="../bilder//perl_titel.gif" alt="[ Titelseite ]" width="81" height="22" border="0"></a></td>
<td><a href="perl_inhalt.html"> <img src="../bilder//perl_inhalt.gif" alt="[ Inhalt ]" width="57" height="22" border="0"></a></td>
<td><a href="perl_index.html"> <img src="../bilder//perl_index.gif" alt="[ Index ]" width="54" height="22" border="0"></a></td>
<td><a href="perl_perldoc.html"> <img src="../bilder//perl_rechts.gif" alt="[ nächste Seite ]" width="43" height="30" border="0"></a></td>
</tr></table>
<hr>
<ul>
<li><a href="#abs1">Was ist Perl ?</a></li>
<li><a href="#abs2">Ein erstes Programm</a></li>
</ul>
<a name="abs1"></a><hr>
<h2 align="center">Was ist Perl ?</h2>
<hr>
<p>
Perl steht für <i>"practical extraction and report language"</i>,
womit eigentlich schon alles gesagt ist. Ziel des Autors Larry Wall
bei der Erstellung von Perl war es, eine Sprache zu entwickeln, die
einerseits die wichtigsten Programmierbefehle wie Schleifen,
Verzweigungen, etc. enthält und andererseits aber auch die
Möglichkeit bietet, leicht Such- und Ersetzungsoperationen
wie in einem Editor durchzuführen. Somit entstand Perl
im wesentlichen als eine Synthese aus der Programmiersprache
<i>C</i> und den UNIX-Funktionen
<b><tt>sed</tt></b> und <b><tt>awk</tt></b>.
</p>
<p>
Die Programme, die man in Perl schreibt, werden als ASCII-Files
gespeichert (wie ein Shell-Skript) und erst unmittelbar vor der
Ausführung kompiliert. Dies macht Programme einerseits leicht
editierbar und auch auf andere Rechnersysteme übertragbar,
andererseits zeichnen sich Perl-Programme insbesondere bei
Suchfunktionen durch eine hohe Geschwindigkeit aus.
</p>
<p>
Perl ist gemäß der <i>Artistic License</i> sowie
(bei den neueren Versionen) unter der <i>GNU Public License</i>
(<i>GPL</i>) einschließlich des
Quellcodes frei verfügbar. Auf den meisten UNIX- bzw. Linux-Systemen
ist Perl bereits vorinstalliert (unter dem Pfad <i>/usr/local/bin/perl</i>
oder <i>/usr/bin/perl</i>).
Außerdem existieren Portierungen für viele andere
Betriebssysteme wie etwa Mac OS und Windows-Varianten, wobei bei
Nicht-UNIX-Systemen bisweilen nicht die gesamte Funktionalität
zur Verfügung steht. Die aktuelle (Stand Januar 2012)
"stabile" Version ist Perl 5.14.2.
Die Nummer der auf einem Rechner installierten Perl-Version
erhält man über "<code>perl -v</code>".
</p>
<p>
Dieses Tutorial wurde auf Basis von Perl 5.005 bzw. 5.6.0
geschrieben, so daß einige Dinge inzwischen wohl als
veraltet betrachtet werden können. Gleichwohl sollten
alle hier präsentierten Beispiele aufgrund der
Kompatibilität auch auf allen neueren Versionen von
Perl-Interpretern laufen.
</p>
<p align="right"><a href="perl_einf.html">[Seitenanfang]</a></p>
<a name="abs2"></a><hr>
<h2 align="center">Ein erstes Programm</h2>
<hr>
<p>
Ein Perl-Programm wird einfach mit einem Text-Editor
(kein Textverarbeitungsprogramm) geschrieben und als Text-Datei (im
wesentlichen ASCII-Code)
abgespeichert. Unter UNIX/Linux ist noch darauf zu achten,
das Execute-Bit der Datei zu setzen, damit die Perl-Programme
direkt aufgerufen werden können, also z.B. mittels
</p>
<blockquote>
<code>chmod u+x skript.pl</code> </blockquote>
<p>
Zum Ausführen eines Perl-Programms ruft man dann auf der
Kommandozeile
</p>
<blockquote>
<code>perl skript.pl</code> </blockquote>
<p>
oder einfach
</p>
<blockquote>
<code>skript.pl</code> </blockquote>
<p>
auf. Wird das Verzeichnis, in dem <code>skript.pl</code> liegt, nicht
standardmäßig nach ausführbaren Programmen durchsucht
(Umgebungsvariable <code>PATH</code>), so ist in der zweiten Variante
der ganze Pfad anzugeben.
</p>
<p>
In der Datei <b><tt>skript.pl</tt></b> steht zum Beispiel folgendes:
</p>
<table align="center" bgcolor="#ffcc99" border="0" cellpadding="2" width="80%"><tr><td>
<table bgcolor="#ffffcc" border="0" cellpadding="10" width="100%">
<tr><td><code>#!/usr/local/bin/perl -w<br><br>print("Just another Perl hacker\n");<br></code></td></tr></table>
</td></tr></table>
<table align="center" bgcolor="#66cc66" border="0" cellpadding="2" width="80%"><tr><td>
<table bgcolor="#ccffcc" border="0" cellpadding="5" width="100%">
<tr><td><code>Just another Perl hacker<br></code></td></tr></table>
</td></tr></table>
<p>
Die erste Zeile beginnt mit einem "<code>#</code>", was von
Perl als Kommentar angesehen und
damit nicht weiter beachtet wird.
Diese Zeile dient dazu, der Shell mitzuteilen, daß es sich hierbei
um ein Perl-Programm und nicht etwa ein Shell-Skript handelt. Der
Pfad gibt dabei an, wo im System <tt>perl</tt> installiert ist (in diesem
Tutorial wird immer der Pfad <i>/usr/local/bin/perl</i> verwendet). Als Option
für Perl empfiehlt es sich, zumindest immer "<code>-w</code>"
anzugeben, da in diesem Falle umfangreichere Meldungen von Perl geliefert
werden, falls beim Interpretieren des Codes Probleme auftreten.
</p>
<p>
Die letzte Zeile enthält die Perl-Funktion
<code>print</code>, die
als Argument eine Zeichenkette erwartet, welche dann auf dem
Bildschirm ausgegeben wird. Das Symbol "<code>\n</code>" führt
an dieser Stelle zu einem Zeilenvorschub. Bei der Funktion
<code>print</code> können (wie bei einigen anderen
Perl-Funktionen) die Klammern auch weggelassen werden:
</p>
<table align="center" bgcolor="#ffcc99" border="0" cellpadding="2" width="80%"><tr><td>
<table bgcolor="#ffffcc" border="0" cellpadding="10" width="100%">
<tr><td><code>#!/usr/local/bin/perl -w<br><br>print "Just another Perl hacker\n"; <font color="#006600"># (Kommentar)</font><br></code></td></tr></table>
</td></tr></table>
<p>
Befehle/Funktionen werden in Perl immer mit einem Semikolon
"<code>;</code>"
abgeschlossen (es kann am Ende eines Blocks entfallen). Bei
Schreibung der Funktionsnamen (und auch von Variablen etc.)
ist stets auf Groß- oder Kleinschreibung zu achten. An jeder
Stelle eines Perl-Programms, an der ein
Leerzeichen erlaubt ist, können anstelle eines einfachen Leerzeichens
auch beliebig viele Tabulatoren, Zeilenvorschübe, etc. stehen.
Kommentare können fast an beliebigen Stellen stehen; sie werden
mit einem "<code>#</code>" eingeleitet und gelten dann bis
zum Zeilenende.
</p>
<p align="right"><a href="perl_einf.html">[Seitenanfang]</a></p>
<hr>
<table align="center"><tr>
<td><a href="perl_inhalt.html"> <img src="../bilder//perl_links.gif" alt="[ vorherige Seite ]" width="43" height="30" border="0"></a></td>
<td><a href="../perl-tutorial.html"> <img src="../bilder//perl_titel.gif" alt="[ Titelseite ]" width="81" height="22" border="0"></a></td>
<td><a href="perl_inhalt.html"> <img src="../bilder//perl_inhalt.gif" alt="[ Inhalt ]" width="57" height="22" border="0"></a></td>
<td><a href="perl_index.html"> <img src="../bilder//perl_index.gif" alt="[ Index ]" width="54" height="22" border="0"></a></td>
<td><a href="perl_perldoc.html"> <img src="../bilder//perl_rechts.gif" alt="[ nächste Seite ]" width="43" height="30" border="0"></a></td>
</tr></table>
<hr>
<table width="100%"><tr>
<td align="left"><i>Autor:
<a href="mailto:Eike.Grote@web.de">Eike Grote</a></i>
</td>
<td align="right"><i>Version: 2.05 (24.1.2012)</i>
</td>
</tr></table>
</body>
</html>