# Einführung

- Was ist Perl ?
- Ein erstes Programm

## Was ist Perl ?

Perl steht für "practical extraction and report language", 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 C und den UNIX-Funktionen `sed` und `awk`.

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.

Perl ist gemäß der Artistic License sowie (bei den neueren Versionen) unter der GNU Public License (GPL) einschließlich des Quellcodes frei verfügbar. Auf den meisten UNIX- bzw. Linux-Systemen ist Perl bereits vorinstalliert (unter dem Pfad /usr/local/bin/perl oder /usr/bin/perl). 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 Februar 2005) "stabile" Version ist Perl 5.8.6 (Anmerkung: Die Numerierung wurde beim Übergang von Version 5.005_03 zu 5.6.0 geändert). Die Nummer der auf einem Rechner installierten Perl-Version erhält man über "`perl -v`".

[Seitenanfang]

## Ein erstes Programm

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

> `chmod u+x skript.pl`

Zum Ausführen eines Perl-Programms ruft man dann auf der Kommandozeile

> `perl skript.pl`

oder einfach

> `skript.pl`

auf. Wird das Verzeichnis, in dem `skript.pl` liegt, nicht standardmäßig nach ausführbaren Programmen durchsucht (Umgebungsvariable `PATH`), so ist in der zweiten Variante der ganze Pfad anzugeben.

In der Datei `skript.pl` steht zum Beispiel folgendes:

`#!/usr/local/bin/perl -w print("Just another Perl hacker\n");`

`Just another Perl hacker`

Die erste Zeile beginnt mit einem "`#`", 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 `perl` installiert ist (in diesem Tutorial wird immer der Pfad /usr/local/bin/perl verwendet). Als Option für Perl empfiehlt es sich, zumindest immer "`-w`" anzugeben, da in diesem Falle umfangreichere Meldungen von Perl geliefert werden, falls beim Interpretieren des Codes Probleme auftreten.

Die letzte Zeile enthält die Perl-Funktion `print`, die als Argument eine Zeichenkette erwartet, welche dann auf dem Bildschirm ausgegeben wird. Das Symbol "`\n`" führt an dieser Stelle zu einem Zeilenvorschub. Bei der Funktion `print` können (wie bei einigen anderen Perl-Funktionen) die Klammern auch weggelassen werden:

`#!/usr/local/bin/perl -w print "Just another Perl hacker\n"; # (Kommentar)`

Befehle/Funktionen werden in Perl immer mit einem Semikolon "`;`" 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 "`#`" eingeleitet und gelten dann bis zum Zeilenende.

[Seitenanfang]

Autor: Eike Grote | Version: 2.02 (30.5.2005)