| Perl ist eine moderne Programmiersprache, die sich gut für die automatische Erstellung von dynamischen Internet-Seiten eignet. Andererseits ist Perl.ideal für Programme geeignet, die am eigenen PC laufen - Im Hintergrund, zur Verwaltung als Konsolen-Programm, oder zur Anwendung mit Bedienung über Webseiten. |
Hier wird Installation und Test auf Windows-Betriebssystemen beschrieben. Beachten sie, dass sich Bezeichnungen, Dateipfade usw. je nach den verwendeten Versionen ändern können. |
| Achtung: Alle Angaben ohne Gewähr ! Wenn sie den Hinweisen folgen, so tun sie das auf eigenes Risiko ! | |
WAMP
|
Standard-Server mit Windows - Apache - MySQL - PHP - Perl |
Perl
|
Informationen für EntwicklerInnen |
| Quellen | Wo kann man Perl downladen ? |
| Installation | Installation auf einem Windows-PC |
| Test | Einfacher Funktionstest |
| Windows | Anpassung von Windows zur Verwendung von Perl |
| Dokumentation | Der (Apache)-Webserver verwaltet die umfangreiche Perl-Doku |
| Shebang | Linux-Sitten auf Windows #! |
| Webserver | Anpassung des Webservers zur Verwendung von Perl CGI-Scripts |
| CGI | Erstellung und Test von Perl CGI-Scripts |
| Module | Installation zusätzlicher Perl-Module (z.B. DBI für Datenbank) |
| Austausch | von Perl-Programmen zwischen Linux und Windows |
| Weiter mit Perl | Programmierung mit Perl |
| Links |
|
|
||||
Voraussetzung:Ein modernes Windows-Betriebssystem (z.B. Win2000, WinXP). Eine Installation auf älteren Systemen ist möglich. |
Auf Linux gehört Perl zum Umfang
jeder Standard-Distribution (LAMP-System). Perl kann auch auf zahlreichen anderen Betriebssystemen installiert werden. Eine gute Übersicht + Download bietet CPAN. |
|||
Version:Meist haben sie die Wahl zwischen stabilen getesteten Arbeits-Versionen und der jeweils neuesten Entwickler-Version.Benutzen sie im Zweifel immer die empfohlene stabile Version ! Für Windows stehen normalerweise fertige 'ausführbare Programme' (binaries) mit & ohne Installer zur Verfügung. |
Quell-CodeDarüber hinaus ist bei oft auch der Perl-Quellcode (source) für zahlreiche Systeme und Versionen verfügbar. Das ist zumindest auf Windows nur erfahrenen EntwicklerInnen vorbehalten, da sie dazu Compiler-Software benötigen und damit ihre eigene Perl-Software compilieren. |
|||
DownloadDie größte Erfahrung und Übersicht finden sie wahrscheinlich bei CPAN (Comprehensive Perl Archive Network).Wichtige CPAN-Angebote: ► Perl binary distribution (ports) - Das sind ausführbare bzw. installierbare Programme. ► Perl source code (Perl-Quelltext) zur Selbst-Herstellung des Perl-Interpreters ► Perl modules - Die größte Sammlung von Zusatz-Modulen für jede denkbare Aufgabe. |
Ein ausgezeichnetes Service bietet der Hersteller ActiveState: Die Perl-Version ActivePerl (ASPN) ist die meist verwendete. Perl und eine sehr große Anzahl ausgezeichneter Zusatz-Module sind kostenfrei verfügbar. Davon kann ein Unternehmen nicht leben - Darüber hinaus bietet ActiveState auch ausgezeichnete Werkzeuge zu Perl und zu anderen Programmiersprachen. Sie finden Perl-Interpreter für Windows auch auf zahlreichen Webs, die Freeware & Shareware anbieten. ♥ Sehr empfehlenswert als Perl-Editor ist das OpenSource-Programm Notepad++ der Sourceforge Organisation. |
|||
Installation von Perl auf Windows |
|
Perl-ProgrammeZur Arbeit mit Perl sollten einige Begriffe klargestellt werden:Scripts
Perl-Programme sind sogenannte Script-Programme, d.h. diese Programme bestehen aus
Anweisungen in lesbarem Text ( text/plain ).
Solche Text-Dateien lassen sich mit jedem Editor
(z.B. notepad.exe, write.exe, .. ) öffnen, lesen
oder ändern. Ein Betriebssystem kann solche Programme nicht ausführen.
Daher benötigen sie zusätzlich ein Interpreter-Programmzur Umwandlung
solcher Scripts in Maschinensprache.
|
Interpreter
Ein Interpreter-Programm ist selbst ein 'ausführbares Programm' (Binary).
Seine Aufgabe ist es, Script-Programm-Texte zu lesen, in Maschinensprache umzuwandeln
und an das Betriebssystem zur Ausführung zu übergeben.
Dieses Programm (auf Windows perl.exe ) und sein Zubehör
müssen sie besorgen und installieren.Apache-Modul
Ein Perl-Interpreter-Programm kann auch direkt in die Software eines
Apache Webservers eingebaut werden.
Dieser Interpreter mod_perl kann nur vom Webserver verwendet
werden, ist aber für diesen besonders schnell und effizient.
|
VorarbeitenPerl lässt sich auch ohne Vorbereitung installieren. Wenn sie allerdings später zusätzliche Perl-Module laden wollen, dann sind diese Arbeiten sehr empfehlenswert:► Wenn sie einen Router (Proxy-Server) zur Verbindung mit dem Internet verwenden, dann legen sie die rechts beschriebene Umgebungs-Variable an. ♦ Details zu Windows Umgebungs-Variablen ► Stellen sie vor der Perl Installation eine funktionierende Verbindung mit dem Internet her. ► Achten sie während der Installation auf die Firewalls auf ihrem PC und am Router (Proxy-Server) und erlauben sie für Perl den Zugang zum Internet. |
Wenn sich ihr PC hinter einem Internet-Router (Proxy-Server) befindet, dann sollten sie die
Umgebungs-Variable HTTP_proxy definieren: ► Öffnen sie . Klicken sie unter dem Fenster den Button und geben sie ein: Name = HTTP_proxy Wert = http://192.168.0.1:1234 Ersetzen sie IP-Adresse (192.168.0.1) und Port (1234) durch die realen Daten ihres eigenen Routers. ► Wenn sie für ihren Proxy Name und Passwort angeben müssen, dann brauchen sie zusätzlich diese Umgebungs-Variablen: Name = HTTP_proxy_user Name = HTTP_proxy_pass Geben sie als Werte die benötigten Daten ein. ► Kontrolle: Führen sie einen System-Neustart durch. Öffnen sie eine Konsole (cmd.exe) und geben sie ein: C:\> set h
Alle mit H beginnenden Variablen werden angezeigt.
|
Installation:In diesem Kapitel werden jene Fragen besprochen, welche der Installer an sie richtet. Lesen sie die Bedeutung dieser Optionen vor dem Start der Installation.Installer
Der Windows-Installer für das Perl-Interpreter-Programm wird entweder als komprimiertes
Archiv oder als Installer geliefert.
Packen sie das Archiv mit einem Expander
(WinRAR,
WinZip,
WinAce, ...)
aus und starten sie den Installer.
|
Installations-Pfad
►
Normalerweise wird Perl in einem dieser Pfade installiert:
C:\Programme\Perl C:\Perl Man hat bessere Übersicht, wenn Perl so wie jedes andere Programm im Ordner 'Programme' installiert wird. Nach erfolgreicher Installation: Dieses Programm ist der Perl-Interpreter: C:\Programme\Perl\bin\perl.exe
Damit werden Perl-Scripts *.pl gelesen, in ausführbare
Programme übersetzt (interpretiert) und ausgeführt.
|
|
Umgebungs-Variable PATH
Jedes Betriebssystem sucht ausführbare Programme (nur) in bestimmten
Verzeichnissen (Ordnern). Die Reihenfolge dieser Verzeichnisse ist in der
Umgebungs-Variablen PATH festgelegt.Öffnen sie eine Win-Konsole ('Eingabe-Aufforderung' cmd.exe ) und geben sie ein C:\> set path
Die Ausgabe enthält mehrere Verzeichnis-Pfade, die voneinander
durch ; Strichpunkt getrennt sind.
|
Wenn der Perl-Interpreter installiert ist, dann sollte der Pfad dorthin unbedingt im PATH enthalten sein. Neuere Perl-Installer fragen, ob sie den Pfad zum Interpreter selbst in diese Umgebungs-Variable eintragen sollen. ► Antworten sie mit Ja/Yes. Andernfalls müssen sie diese Arbeit nachträglich selbst ausführen. Der Perl-Interpreter arbeitet auch ohne Eintragung in PATH, seine Anwendung ist dann jedoch recht mühsam. |
|
Perl für Alle
Manche Installer fragen, ob Perl nur für sie (den aktuellen User) oder für alle
User dieses PC installiert werden soll.
|
► Wählen sie die Installation für alle User, das ist sinnvoll. |
|
Platzbedarf (Richtwerte): Installer-Download ca. 13 MB Festplatte: ca. 41 MB + 22 MB Perl-Doku |
Zusätzliche Module brauchen wenig Platz: Richtwert ca. 100-300 kB pro installiertem Modul (inkl. Doku). |
Test der Perl-Installation |
|
| Voraussetzung: Installation eines Perl-Interpreters | |
Perl-Interpreter-ProgrammSehen sie nach, ob sich der Perl-Interpreter perl.exe im gewünschten Pfad befindet, z.B.C:\Programme\Perl\bin\perl.exe
|
Falls nicht: Arbeiten sie entweder mit dem tatsächlichen Pfad oder
de-installieren sie Perl und installieren sie erneut mit Angabe des richtigen Pfads. |
|
Umgebungs-Variable PATH
Öffnen sie eine Konsole (Eingabe-Aufforderung cmd.exe )
und geben sie ein
C:\> set path
|
In der Ausgabe sollte der Pfad zum Perl-Interpreter enthalten sein. Wenn nicht, dann kann Perl funktionieren, die Arbeit ist jedoch sehr mühsam. Korrigieren sie die Umgebungs-Variable PATH notfalls manuell. |
Perl-Interpreter Test:Wenn Perl richtig installiert ist, dann meldet sich der Perl-Interpreter (Ausführungs-Programm für Perl Script-Programme) direkt auf der System-Konsole.Öffnen sie ein Konsolen-Fenster ( 'Eingabe-Aufforderung' bzw. cmd.exe )und geben ein:
C:\> perl -version
Bei korrekter Installation erhalten sie einen Meldungstext mit Angaben zur Version
sowie Hilfe zu den Perl-Konsolen-Befehlen.
C:\> perl -help |
Wenn sich Perl nicht meldet, dann versuchen sie es mit dem kompletten Pfad zum Programm, z.B.
C:\> c:\programme\perl\bin\perl.exe -v
C:\Programme\Perl\bin> perl.exe -v Wenn nur diese Version funktioniert, dann ist Perl richtig installiert, es fehlt jedoch noch die Einstellung der System-Variablen PATH |
Perl-Script-ProgrammPerl-Programme sind Scripts, d.h. Dateien in lesbarem Klartext (text/plain). Zur Erstellung können sie jeden beliebigen Text-Editor verwenden, z.B.C:\Windows\system32\notepad.exe
|
- Wenig geeignet sind Textverarbeitungs-Programme, z.B.
OpenOffice oder M$ Word + Besser geeignet sind spezielle Perl-Editoren, wie z.B. Notepad++ oder PerlEditor von DzSoft |
|
Erzeugen sie eine Text-Datei mit dem Namen
C:\ptest.pl
und erstellen sie mit einem Editor folgendes Perl-Programm (Script):
|
print "Hier ist Perl \n";
Der Befehl print erzeugt eine Ausgabe (an das Konsolen-Fenster).
Achten sie auf den abschließenden ; Strichpunkt.
|
|
Starten sie ein Windows-Konsolen-Fenster ( oder das Programm
'Eingabeaufforderung')
und befehlen sie
C:\> perl c:\ptest.pl
Als Reaktion sollte auf der Konsole angezeigt werden:
Hier ist Perl
|
Bei diesem Test wird das Perl-Interpreter-Programm perl.exe
aufgerufen. Der Pfad zur Script-Datei ptest.pl wird dabei als
"commandline-Parameter"
- durch ein Leerzeichen getrennt - eingegeben. - Haben sie Perl in einem anderen Pfad installiert ? - Liegt ihr Script in einem anderen Pfad ? - Enthält die System-Variable PATH den Perl-Pfad ? - Ist der Konsolen-Befehl richtig eingetippt ? - Ist ihr Perl-Script fehlerhaft ? |
Anpassung von Windows |
|
| Auf einem Linux-System muss Perl weder installiert noch angepasst werden - Dort ist Perl Standard-Bestandteil jeder gängigen Distribution. | Auf Windows sind einige Anpassungen ratsam, jedoch nicht unbedingt notwendig. Je erfahrener sie sind, umso leichter wird es ihnen fallen, Perl perfekt in ihr Betriebssystem einzufügen: |
PATHWindows sucht ausführbare Programme nach den Angaben der Umgebungs-Variablen PATH .Der Pfad zum Perl-Interpreter perl.exe (normalerweise) C:\Programme\Perl\bin
sollte im Text der System-Variablen (Umgebungs-Variablen) PATH
enthalten sein.
|
► Anzeige des aktuellen PATH: C:\> path
Bei Anforderung eines Programms (z.B. von perl.exe ) werden vom
Betriebssystem alle eingetragenen Pfade in dieser Reihenfolge
nach ausführbaren Programmen durchsucht. Als Trennzeichen zwischen den einzelnen
Pfaden dient der ; Strichpunkt.
|
|
Profi-Installation von PATH:
►
Der Installer neigt dazu, den Perl-Pfad allen anderen voranzustellen.
Es ist besser, den Perl-Pfad nach den Pfaden zum
Betriebssystem-Verzeichnis einzufügen.► Manche Installer legen den Perl-Pfad nur in den privaten Benutzer-Variablen des gerade angemeldeten Users an. Der Perl-Pfad sollte jedoch in der PATH-Variable für alle User (Systemvariablen) enthalten sein. ► Änderung: Entweder in der System-Verwaltung oder in der Registry-Datenbank. Vorsicht - Beide Varianten sind erfahrenen AnwenderInnen vorbehalten. Durch falsche Bedienung kann irreversibler Schaden an ihrem Betriebssystem angerichtet werden ! |
► System-Steuerung Systemsteuerung | System | Erweitert | Umgebungsvariablen Der PATH ist in dem winzigen Feld schlecht zu editieren: Kopieren sie den Inhalt in ein Editor-Fenster, und setzen sie den geänderten Text danach wieder in das Feld ein. ► Änderung in der Registry-Datenbank: Starten sie regedit.exe und gehen sie zum Schlüssel
HKEY_LOCAL_MACHINE | SYSTEM | ControlSet001 | Control| Session Manager | Environment
(Je ein ControlSet für jeden User, bzw. CurrentControlSet wird je nach User-Anmeldung
ausgewählt).► Derartige Änderungen werden normalerweise erst nach Neustart des Systems wirksam. |
|
Pfad-Test
Testen sie, ob der Perl-Interpreter auch nach Neustart des Systems richtig gefunden wird.
Verzweigen sie zu unterschiedlichen Verzeichnissen und erteilen sie einen einfachen Perl-Befehl:
C:\Programme\Perl\bin> perl -v
Profi-Pfad-Test: Wiederholen sie diesen Test nach Anmeldung als anderer User.
C:\Programme> perl -v C:\> perl -v D:\> perl -v |
|
PATHEXTMit Hilfe der Umgebungs-Variablen PATHEXT erkennt Windows, welche der zahlreichen Dateien im PATH (s.o.) ausführbar (Programme und Script-Programme) sind.Vorsicht - Änderungen von System-Variablen sind erfahrenen AnwenderInnen vorbehalten ! Ändern sie PATHEXT so wie rechts gezeigt. |
Die Variable PATHEXT enthält die Datei-Endungen ausführbarer Programme, z.B. .COM;.EXE;.BAT;...
Ergänzen sie ein ; Trennzeichen und die
Datei-Endung .PL z.B.
.COM;.EXE;.BAT;...;.PL
Damit gelten Perl Script-Programme als 'ausführbar' - Das funktioniert allerdings nur dann,
wenn die Datei-Endung mit dem Perl Interpreter (nächstere Absatz) verknüpft wird.♦ Details dazu im Kapitel Windows Umgebungs-Variable |
|
Standardprogramm für Perl-Scripts
Ein Win-Betriebssystem sollte *.pl-Dateien (ungefragt) mit dem
Perl-Interpreter öffnen.Befehl: Nach einer Wartezeit wird die Liste aller bekannten Dateitypen angezeigt. ► Suchen sie PL in der Spalte "Erweiterungen". Falls kein Eintrag für PL existiert, erstellen sie einen solchen. |
►
Kontrollieren / Ändern sie :
Dateitype = PerlScript
►
Kontrollieren / Ändern sie
"Öffnen mit" = "Perl Commandline Interpreter"
(suchen sie nach C:\Perl\bin\perl.exe )Unter "Erweitert" sollte die Aktion "Open" enthalten sein, welche diesen Befehl ausführen muss: "C:\Programme\Perl\bin\perl.exe" "%1" %*
♦ Details zu den Ordner-Optionen |
|
Kontrollieren sie die richtige Zuordnung mit dem
Konsolen-Befehl ASSOC Die integrierte Hilfe help assoc gibt weitere Hinweise, z.B. wie Änderungen der Zuordnung auch mit assoc ausgeführt werden können. |
C:\> assoc .pl
.pl=Perl |
|
Kontrollieren sie die richtige Zuordnung mit dem
Konsolen-Befehl FTYPE Die integrierte Hilfe help ftype gibt weitere Hinweise, z.B. wie Änderungen auch mit ftype ausgeführt werden können. |
C:\> ftype Perl
♦ Details zu den Konsoilen-Programmen
ASSOC und FTYPE
Perl="c:\programme\perl\bin\perl.exe" "%1" %* |
|
Test:
Dazu müssen sie zumindest über ein minimales Perl Script-Programm verfügen, z.B.C:\ptest.pl so wie im Kapitel Perl-Test dieser Seite beschrieben. Öffnen sie ein Konsolen-Fenster und geben sie den Befehl zur Ausführung dieses Scripts ein. Verringern sie die komplette Angabe (1. Zeile) schrittweise:
C:\> c:\programme\perl\bin\perl.exe c:\ptest.pl
C:\> perl.exe c:\ptest.pl C:\> perl c:\ptest.pl C:\> perl c:\ptest C:\> c:\ptest |
Nun wird es schon einfacher, Perl-Scripts zu verwenden: Die Dateinamen der Scripts können wie Konsolen-Befehle verwendet werden. |
Interaktiver TestErzeugen sie ein weiteres Perl-TestscriptC:\pintest.pl
|
print "Hier ist Perl Test interaktiv\n";
print "Bitte um eine TextSpende: \n"; $eingabe = <STDIN>; |
|
Versuchen sie nun, das Programm durch Doppelklick aus Windows zu starten: ► Das Programm sollte sich (in einem Konsolenfenster) öffnen ► Sie können einen Text eingeben ► Nach Eingabe schließt sich das Fenster. |
Sie können nun Perl-Programme erstellen, die auf ihrem PC beliebige System-Arbeiten ausführen, ähnlich wie Konsolen-Scripts *.bat oder *.cmd, jedoch weitaus mächtiger als diese. Viele dieser Programme lassen sich sogar Plattform-unabhängig erstellen, d.h. sie laufen (fast) ohne Änderung auf Linux ebenso wie auf Windows. |
Proxy-Server (Router)Perl wird meist mit einer guten Grund-Ausstattung an Modulen geliefert. Rechnen sie jedoch damit, selbst weitere Module zu installieren. In diesem Fall braucht der Programmers Package Manager (ppm) Informationen über den Zugang zum Internet.► Wenn ihr PC direkten Zugang zum Internet hat, dann ist dafür keine weitere Adaptierung notwendig. |
► Wenn sich ihr PC hinter einem Proxy-Server (Internet-Router) befindet, dann muss die Umgebungs-Variable HTTP_proxy definierent sein. Wenn ihr Router Name und Passwort benötigt, dann müssen auch die beiden Umgebungs-Variablen HTTP_proxy_user und HTTP_proxy_pass definiert sein. Details dazu im Kapitel Installation dieser Seite. |
Registry Hack► Nach sauberer Installation können Perl Script-Programme wie z.B. c:\test.pl in der Kurzform gestartet werden:C:\> test
Manchmal kann man diesen Programmen jedoch keine Commandline-Argumente mitgeben wie z.B.
C:\> test abc 123
In diesem Fall hilft eine Änderung der Registry-Datenbank.
Das ist jedoch erfahreren AdministratorInnen vorbehalten.
Achtung - Änderungen der Registry können
irreparable Schäden an Betriebssystem, Programmen oder Daten zur Folge haben !
♠ Öffnen sie den Registry Editor regedit.exe und kontrollieren sie die Schlüssel
►
HKEY_CLASSES_ROOT \ Applications \ perl.exe \ shell \ open \ command
► HKEY_CLASSES_ROOT \ Perl \ Shell \ Open \ Command ► HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Perl \ Shell \ Open \ Command |
♠ In den Schlüsseln sollte sich je ein String (Standard) mit diesem Wert befinden "C:\Programme\Perl\bin\perl.exe" "%1" %* ♠ Falls der String bereits mit "%1" endet, wird von einer Befehlszeile C:\>perl.exe c:\test.pl abc 123
nur das erste Argument an den Perl-Interpreter übergeben, nämlich der Pfad zum
Perl-Script test.pl, alle weiteren Argumente werden ignoriert.Der Zusatz %* (ohne " ") sorgt dafür, dass alle folgenden Argumente an ihr Script weitergegeben werden. ♠ Der gleiche String kommt noch in einer Reihe anderer Schlüssel vor, muss dort aber normalerweise nicht geändert werden, da diese Schlüssel bei Systemstart oder User-Anmeldung automatisch gesetzt werden. ♦ Details zur Verarbeitung von Commandline-Argumenten mit Perl. ♦ Details zum Thema Registry ↔ Datei-Erweiterungen und Datei-Typen |
Perl-Dokumentation |
|
|
Voraussetzung:
Perl installiert und
getestet, Windows
angepasst.
|
Die umfangreiche Perl-Dokumentation wird für einen bequemen Zugang eingerichtet. |
Dokumentation:Zusammen mit Perl wird normalerweise die komplette Perl-Dokumentation (auf Webseiten) geliefert und installiertStart mit C:\Programme\Perl\html\index.html Die Doku ist sehr umfangreich, aber etwas gewöhnungs-bedürftig. Sie wird am besten von einem Webserver verwaltet. Modul-Doku:Jedes Perl-Modul installiert bei Installation seine komplette Dokumentation. Das ist besonders bequem, funktioniert jedoch nur dann, wenn man das gesamte Doku-Verzeichnis an seinem Platz lässt.♣ Das Doku-Verzeichnis sollte nicht verschoben werden. Für einen idealen Zugang binden sie die Doku an den Webserver, so wie rechts für Apache 2.2 gezeigt. |
Perl-Doku # Apache-Webserver:So wird die Perl-Doku mit einem Apache-(2.2)-Webserver zugänglich gemacht:► Erzeugen sie eine Text-Datei C:\Programme\Apache Software Foundation\Apache2.2\conf\extra\perldoku.conf
und tragen sie diesen Text ein:
Alias /perldoku "C:/Programme/perl/html"
Noch besser ist es, den Zugang auf den eigenen PC oder auf die PC im lokalen Netzwerk (LAN)
zu begrenzen. Ersetzen sie die Allow-Zeile durch
<Directory "C:/Programme/perl/html">
Order allow,deny
</Directory>
Allow from all Allow from 192.168.0.0/255.255.255.0
und ersetzen sie die IP-Adresse
durch jene ihres lokalen Netzwerks.► Tragen sie am Ende der Konfigurations-Datei C:\Programme\Apache Software Foundation\Apache2.2\conf\httpd.conf
eine zusätzliche Include-Anweisung ein:Include conf/extra/perldoku.conf
► Legen sie auf einer passenden Webseite (z.B. auf index.html einen Link zur der Perl-Doku, z.B.
<a href="http://localhost/perldoku">Perl-Doku</a>
Wenn der Webserver nicht am eigenen PC liegt, dann ersetzen
sie localhost durch Name oder IP-Adresse des Servers.<a href="/perldoku">Perl-Doku</a> Wenn sie diesen Link anklicken, dann haben sie direkten Zugang zur Perl-Doku. Das ist der beste Weg, diese und andere Manuals ins eigene Web einzubinden. |
#!Shebang |
|
| Auf Linux-Systemen wird durch einen speziell formatierten (shebang)-Text festgelegt, mit welchem Programm ein Script-Programm ausgrführt werden soll. | Das ist auf Windows-Systemn anders gelöst und daher wirkungslos - Mit einer Ausnahme: Bei Verwendung von Perl-Scripts als CGI, d.h. zur Erzeugung von dynamischen Webseiten auf einem Webserver. |
|
Die Zeichen-Konbination #! am Anfang (!)
einer Text-Datei wird u.a. auch "shebang" genannt. Anschließend wird der Pfad zum ausführenden Programm eingefügt. Sie ist in allen Linux-Script-Programmen als erste (!) Zeile enthalten. Daraus erkennt das Linux-System, mit welchem Programm diese Script-Datei ausgeführt werden soll. Die Methode erfordert keine eigene Organisation, ist voll transparent und erlaubt es, für jede beliebige Text-Datei das Zielprogramm, Switches oder Parameter anzugeben. Unabhängig davon lässt sich jede Datei natürlich auf Wunsch mit anderen Programmen (z.B. mit einem Editor) öffnen. |
Perl-Scripts beginnen auf Linux normalerweise mit der Zeile
#!/usr/bin/perl
Das ist der Standard-Pfad zum Perl-Interpreter auf Linux.
# Perl-Kommentare beginnen mit "#"
# Die Shebang-Zeile wird daher vom Perl-Interpreter ignoriert # so wie jede andere Kommentarzeile. |
| Auf Windows wird die shebang-Zeile vom Betriebssystem ignoriert, sie können daher portable Perl-Scripts für Perl-Programme immer mit der oben angegebenen Linux-shebang-Zeile erstellen. |
Das Testscript ptest.pl kann daher sowohl auf Linux als auch
Windows verwendet werden, wenn sie es so ergänzen:
#!/usr/bin/perl
print "Hier ist PerlTest\n"; |
|
Bei Verwendung als CGI-Programm (zusammen mit einem
Webserver) sollten Perl-Scripts jedoch auch auf
Windows den shebang enthalten.
Windows-Perl-CGI-Scripts beginnen mit dieser Zeile:
#!c:\programme\perl\bin\perl.exe
Damit wird der Pfad zum Perl-Interpreter-Programm perl.exe bezeichnet.Wichtig: Die shebang-Zeile muss die erste Zeile im Dokument sein, und sie muss unmittelbar am Zeilen-Anfang beginnen (keine führenden Leerzeichen oder Tab-Zeichen). |
Portable Perl-CGI-Programme werden zweckmäßig mit diesen
beiden Anfangszeilen erstellt. Je nach Betriebssystem muss man die beiden
Zeilen austauschen:
#!/usr/bin/perl
#!c:\perl\bin\perl.exe Tipp: Ein praktisches Tool für die Vertauschung lässt sich in Perl leicht selbst programmieren. |
|
Neuere Apache Versionen benötigen die shebang-Zeile nicht unbedingt: An ihrer Stelle können die Daten der Registry-Datenbank verwendet werden. In diesem Fall müssen sie in die Konfiguration die Zeile ScriptInterpreterSource registry
in die Apache-Konfiguration eintragen bzw. das
Kommentar-Zeichen vor dieser Zeile löschen.
|
Trotzdem wird empfohlen, die shebang-Zeile in jedem Fall korrekt einzutragen: Dann funktioniert das Perl-CGI-Programm unabhängig von der verwendeten Methode. |
Webserver und Perl CGI-Scripts |
|
| Voraussetzung: (Apache) Webserver installiert, gestartet und getestet, Perl installiert und getestet. | |
| Wenn sie Perl verwenden wollen, um damit dynamische Webseiten zu erstellen, dann müssen sie dafür sorgen, dass der Webserver Perl-Scripts (an der Datei-Endung *.pl) erkennt und zur Verarbeitung an den Perl-Interpreter perl.exe oder an das Apache-Modul mod-perl übergibt. | Die solcherart verwendeten Perl-Scripts folgen dem für "Common Gateway Interface" (CGI) definierten Standard. |
|
Der Apache Webserver wird durch die
Datei
httpd.conf gesteuert. Diese Datei befindet sich (je nach Apache Version ) z.B. hier: C:\Programme\Apache Software Foundation\Apache2.2\conf\httpd.conf
|
Beachten sie die Allgemeinen Regeln
für jede Änderung der Konfigurationsdatei :
+ Sicherungskopie erzeugen
+ Jede Änderung dokumentieren |
Apache-Modul mod_cgiSuchen sie im Text der Datei httpd.conf nach "LoadModule": |
Das Apache CGI-Modul sollte geladen werden:
LoadModule cgi_module modules/mod_cgi.so
Entfernen sie ein allfälliges Kommentar-Zeichen am Beginn der Zeile.
|
Directory Options ExecCGISuchen sie im Text nach "<Directory". (mehrere Treffer)Jeder dieser Abschnitte legt das Verhalten im betreffenden Verzeichnis fest. Unmittelbar darauf folgen die Options für das Verzeichnis. Wenn darin ExecCGI enthalten ist, dann lassen sich CGI-Programme in diesem Verzeichnis und in allen Unter-Verzeichnissen ausführen. Das ist nur für den Test geeignet, aber im realen Betrieb unüblich - Sie öffnen damit eine Sicherheitslücke ! |
Empfohlene Einstellungen: Beispiel für Test: Options Indexes FollowSymLinks ExecCGI
Beispiel für Produktion:
# Options Indexes FollowSymLinks ExecCGI
|
Alias cgi-binSuchen sie im Text nach AliasAlias und ScriptAlias sind Namen, die von Apache durch den angegebenen Text ersetzt werden (Text-Makros): Hier finden sie normalerweise einen Eintrag für CGI-Programme, allenfalls auch für für PHP:
ScriptAlias /cgi-bin/ "C:/Programme/Apache Software Foundation/Apache2.2/cgi-bin/"
Jede Definition besteht aus dem Befehlswort ScriptAlias,
einem Alias-Namen und einem Text.
ScriptAlias /php/ "C:/Programme/Apache Software Foundation/Apache2.2/php/" |
Apache ersetzt jedes Auftreten eines ScriptAlias-Namens durch den angegebenen Text. Wenn sie z.B. in einer Browser-Adresszeile eingeben: http://localhost/cgi-bin/ptest.pl
dann versucht der Server, das Script ptest.pl in jenem Verzeichnis
auszuführen, welches durch den Text des ScriptAlias definiert wurde.
Der Alias-Name muss dabei exakt so angegeben werden wie in der
Definition, also /cgi-bin/ inkl. beider Schrägstriche.Ein Alias kann in ein beliebiges Verzeichnis weisen. Leider kommt es leicht zu Mißverständnissen, wenn Alias-Name und Verzeichnis-Pfad gleich oder ähnlich gewählt werden, so wie hier. |
|
Auf Apache-Linux ist es üblich,
das Modul mod_perl zusätzlich zum Perl-Interpreter einzusetzen:
Dieser Perl-Interpreter arbeitet ausschließlich mit dem Apache-Webserver,
und ist damit besonders schnell und effizient. Das Modul kann in 2 verschiedenen modes arbeiten, dafür werden 2 verschiedene ScriptAlias definiert, die jedoch meist in das gleiche Verzeichnis verweisen. |
ScriptAlias /perl/ "/srv/www/cgi-bin/"
ScriptAlias /cgi-perl/ "/srv/www/cgi-bin/" |
| Unmittelbar anschließend sind meist die Details für das jeweiligen Verzeichnis definiert - lassen sie diese im Zweifel unverändert ! |
<Directory "C:/Programme/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
</Directory>
Options None Order allow,deny Allow from all |
|
Falls sie Scripts außerhalb der ScriptAlias-Verzeichnisse
ausführen wollen (Sicherheits-Risiko !), müssen sie das dafür
zuständige Programm festlegen. Suchen sie im Text nach "AddHandler" bzw. ergänzen sie eine Anweisung zur Ausführung bestimmter Dateien (*.pl) mit einem Handler (cgi-script). Um Ausführungs-Rechte (execute) in einem Verzeichnis zu erlauben, müssen sie darin die Option ExecCGI setzen (ersetzen sie .. durch den Verzeichnis-Pfad). |
Ergänzen sie beim "cgi-script"-Handler
".pl" Damit wird die Beziehung zwischen Datei-Erweiterung und Handler (ausführendem Programm) festgelegt.
AddHandler cgi-script .cgi .pl
<Directory ..> Options ExecCGI
</Directory>
|
|
Falls sie Änderungen an der Konfigurationsdatei vorgenommen haben: ● Führen sie einen Neustart des Servers aus. ● Testen sie mit einem Browser, ob der Server korrekt arbeitet. |
● Ersetzen sie nach posivem Ablauf aller Tests die Sicherungskopie der Konfigurationsdatei durch eine neue Version. |
Perl mit M$ IISActivePerl kann auch mit einem IIS Server verwendet werden.► Der Server muss vor der Installation von Perl bereits installiert und getestet sein. IIS Version 3:
●
ActivePerl gibt dem M$ Internet Server Application Programming Interface
ISAPI
die Datei-Endung *.plx bekannt.Die Verknüpfung der Datei-Endung mit einem Programm muss für den Explorer und für den Server getrennt vorgenommen werden. Die Registry-Schlüssel für den Server:
HKEY_LOCAL_SYSTEM \ System \ CurrentControlSet \ Services \
W3SVC \ Parameters \ ScriptMap
Meist registriert man hier 2 verschiedene Datei-Endungen:.pl mit perl.exe %s und .plx mit PerlIIS.dll Geben sie für die ausführbaren Programme (*.exe,*.dll) deren vollständige Pfade an. ● Ihre Perl Script-Dateien verschieben / kopieren sie in ein Virtuelles Server-Verzeichnis, welches Ausführungs-Rechte (execute), jedoch keine Lese-Rechte (read) hat (meist cgi-bin oder ähnlich). Mit dem Internet Service Manager können sie virtuelle Verzeichnisse anlegen oder deren Eigenschaften ansehen / ändern. Diese Verzeichnisse dürfen sich nicht mit dem Web-Verzeichnis (WWW root directory) überlappen, in welchem sich die normalen Webseiten befinden. ● Der Server-User muss Zugriffs-Rechte auf alle benötigten Dateien haben: Script-Programme, Perl *.exe und *.dll, Perl Bibliotheken, Module usw. Der Server-User wird im Internet Service Manager eingestellt und lautet normalerweise auf IUSR_* (* = Server-Name). ● Nach jeder Änderung der Konfiguration bzw. der Registry muss der Server neu gestartet werden. |
IIS Version 4 und 5:
●
Öffnen sie den Internet Service Manager. Er startet automatisch in der
Management Console.● Wählen sie links den gewünschten Bereich (level) aus den Optionen {Gesamter Server, WebSite, Virtuelles Verzeichnis} für ihre Einstellungen. ● Wählen sie Action | Eigenschaften (properties) ● Bereich 'Gesamter Server' (entire server): Das Fenster 'Server Properties' wird geöffnet. Wählen sie Master Propereties | WWW Service | Edit. Wählen sie aus den Master Properties das Register Home Directory. Weiter zum orangen Punkt. ● Bereich Website: Das Fenster 'Web Site Properties' wird geöffnet. Wählen sie das Register 'Home Directory'. Weiter zum orangen Punkt. ● Virtuelles Verzeichnis: Das Fenster 'Virtual Direcory Properties' wird geöffnet. Wählen sie das Register 'Virtual Directory' ● Klicken sie 'Configuration'. Das Fenster 'Application Configuration' wird geöffnet. Wählen sie App Mappings | Add Im nun geöffneten Fenster führen sie die eigentliche Einstellung durch: ● Perl als CGI-Programm: Geben sie den vollständigen Pfad zum Perl Interpreter an, z.B. C:\Programme\Perl\bin\perl.exe %s %s
Der erste Platzhalter %s wird bei Ausführung durch den
Pfad zum jeweiligen Script-Programm ersetzt, der zweite Platzhalter durch die
allenfalls übergebenen Argumente.● Perl als ISAPI-Modul: Geben sie den vollständigen Pfad zu PerlIIS.dll an. Platzhalter sind in diesem Fall nichr nötig. ● Geben sie als Erweiterung (Extension) .pl oder .plx an. ● Bestätigen sie mit OK und schließen sie alle offenen Fenster, inkl. IIS Service Manager. ● Starten sie den Server neu. |
Perl CGI-Script |
|
|
CGI ist ein Standard für Webserver-Hilfsprogramme "Common Gateway Interface". Dabei handelt es sich meistens um Perl-Scripts (*.pl) oder direkt ausführbare (C++)-Programme (*.exe). |
Der CGI-Standard regelt die Zusammenarbeit der Hilfsprogramme mit dem Webserver. |
|
Erzeugen sie ein Perl CGI-Script z.B. im Pfad
C:\perlcgi.pl
►
Das Script muss (!) mit der shebang-Zeile für
das betreffende Betriebssystem beginnen !► Als erste Ausgabe (print-Befehl) folgt die MIME-Type des nachfolgenden Dokuments (text/html) und unmittelbar nachher 2 newline-Zeichen "\n\n". ► Danach folgt eine Mini-HTML-Webseite. |
#!c:\programme\perl\bin\perl.exe
#!/usr/bin/perl print "Content-type: text/html\n\n"; print "<html>\n"; print "<h2>Hier ist Perl-CGI</h2>\n"; print "</html>\n"; |
|
►
Testen sie das Script zuerst in einem Konsolen-Fenster:
C:\> perl c:\perlcgi.pl
|
Hier zeigt sich kein Unterschied zu den bisherigen Test-Scripts. Die enthaltenen HTML-Befehle (tags) werden so wie jeder andere Text ausgegeben. |
|
►
Installation von Perl-CGI-Scripts Kopieren sie das Script in das Verzeichnis "cgi-bin" des Webservers: C:\Programme\Apache Software Foundation\Apache2.2\cgi-bin\perlcgi.pl
|
Wenn der Webserver das CGI-Script startet, dann wird dessen Ausgabestrom <STDOUT> nicht an die Konsole (wie beim Test), sondern zum Webserver und in der Folge zum Browser weitergeleitet. |
|
►
Zugriffsrechte Das Script muss für alle User lesbar und ausführbar sein (Linux-Rechte 755). Je nach Windows-System sind derzeit manche Zugriffsrechte einstellbar. In zukünftigen Win-Betriebssystemen wird hoffentlich diese Funktion so installiert, wie in allen anderen gängigen Betriebssystemen längst üblich. |
► Upload: Wenn sie ihr fertiges Perl-Script auf den Server eines Web-Providers uploaden, dann müssen sie danach die Zugriffsrechte einstellen. Ein häufige Ursache für die Fehlfunktion von CGI-Scripts auf entfernten Webservern ist die vergessene Einstellung der Zugriffsrechte ! |
|
CGI-Test am Browser Legen sie auf einer beliebigen Webseite (z.B. index.html) einen Link zu ihrem Perl-CGI-Script an:
<a href="/cgi-bin/perlcgi.pl">PerlCGI</a>
Testen sie den Link:Profi-Information: /cgi-bin/ bezeichnet kein Verzeichnis, sondern wird vom Apache Webserver als Alias interpretiert: Das Alias wird durch den in der Konfiguration angegebene Text ersetzt. |
+ Zugriffsrechte auf 755 eingestellt ? + Kontrollieren sie die genaue Syntax ihres Links zum CGI-Script, beachten sie auch Groß- und Kleinbuchstaben. + Führen die die vorhergehenden Tests (am besten in der angeführten Reihenfolge) aus. |
|
Übergabe von Argumenten
Damit ein Programm flexibel auf unterschiedliche Anforderungen reagieren kann,
muss es in der Lage sein, variable Anweisungen (Argumente, Parameter) zu übernehmen.
|
Perl-Scripts stellen dafür verschiedene Wege zur Verfügung,
z.B. GET und POST Beide können sie mit HTML-Formularen kombinieren. ♦ Details dazu finden sie in den Kapiteln Perl-Programmierung und CGI. |
Perl-Module |
|
|
Die üblichen Perl-Versionen für Windows sind bereits recht gut ausgestattet. ► Die Funktionalität kann mit derzeit ca. 6500 Modulen erweitert werden. |
► Das Standard-Werkzeug zum Laden zusätzlicher Module ist der Programmer's Package Manager (PPM). In älteren Perl-Versionen war das Programm als Windows Konsolen-Programm enthalten. Neue Versionen enthalten den PPM als komfortables Programm mit Fenster und Maus-Bedienung. |
|
Voraussetzungen für PPM auf Windows ► Perl ist funktionsfähig installiert. ► Der Pfad zu den Perl-Programmen C:\Programme\Perl\bin
sollte in der
Umgebungs-Variablen PATH eingetragen sein.► Wenn ihr PC keinen eigenen Internet-Zugang hat, sondern über das lokale Netzwerk (Router, Proxy) verbindet, dann muss eine Umgebungs-Variable HTTP_proxy eingetragen sein. Wenn ihr Proxy z.B. auf Adresse 192.168.0.1 und Port 12345 erreichbar ist, dann tragen sie ein C:\> set HTTP_proxy=192.168.0.1:12345
Kontrollieren sie mit Befehl
C:\> set h
►
Ihr PC sollte arbeitsfähig mit dem Internet verbunden sein, mit oder ohne Proxy.Start von PPM: ► PPM wird z.B. durch Doppelklick auf diese Datei gestartet: C:\Programme\Perl\bin\ppm.bat
►
Alternativ öffnen sie eine
Windows-Konsole cmd.exe und geben ein:
C:\> ppm
|
Konfiguration von PPM: ► Wenn sich das Fenster Perl Package Manager öffnet, klicken sie auf das erste Icon (View all packages). Der Filter (Eingabe-Zeile rechts neben dem Such-Symbol) sollte leer sein. Im Fenster sollte eine lange Liste von Paketen angezeigt werden, die Fußzeile sollte >6000 Packages angeben. In diesem Fall ist PPM gebrauchsfertig. ► Wenn keine oder nur wenige Pakete angezeigt werden, dann besteht keine Internet-Verbindung oder die Vorgaben müssen ergänzt werden: Menü : Hier muss eine Zeile eingetragen sein, die in der Spalte #Pkgs mindestens 6000 Pakete anführt. Ansonsten tragen sie ein: Name = ActiveState Package Repository (oder einen ähnlichen Namen, falls dieser bereits existiert). Location = http://ppm4.activestate.com/MSWin32-x86/*/package.xml Den * ersetzen sie durch Perl Versions-Nummer, / und Build-Nr, z.B. für Perl-Version 5.9.123 setzen sie ein: http://ppm4.activestate.com/MSWin32-x86/5.9/123/package.xml
|
Arbeit mit PPM► Tragen sie in die Filter Eingabe-Zeile den gewünschtem Begriff ein, z.B. mysql► Markieren sie die Zeile eines gewünschten Moduls und klicken sie das Icon mit dem grünen + (Mark for install). ► Markieren sie weitere Module zur Installation, am besten jedoch nicht mehr als 3-5 Module. ► Für den Zugriff auf eine MySQL-Datenbank benötigen sie z.B. die Module DBI und DBD-mysql |
► Klicken sie das Icon mit dem grünen Pfeil (Run marked actions). Der PPM ladet die gewünschten Module, installiert sie, und installiert ihre Dokumentation. Das kann einige Minuten dauern. ► Nach erfolgreicher Installation können sie weitere Module installieren. Es kann vorkommen, dass ein Modul mit einem bereits installierten kollidiert. In diesem Fall wird eine Fehlermeldung angezeigt, und die Installation abgebrochen. |
PPM als Konsolen-Programm► Die Konsolen-Version von ppm ist gleichzeitig installiert und startet, wenn ppm mit einem Argument geöffnet wird, z.B.C:\> ppm help
Die Konsolen-Version ist zwar weniger bequem zu bedienen, jedoch mächtiger als
die Fenster-Version.
|
Anzeige aller registrierten Repositories von Perl-Modulen: C:\> ppm rep list
Registrieren zusätzlicher Repositories, z.B.:
C:\> ppm repo add http://theoryx5.uwinnipeg.ca/ppms
Hinweis: Die genauen Namen der Links sind oft abhängig von der Perl-Version !
C:\> ppm repo add http://www.bribes.org/perl/ppm |
|
Beispiel: Installation des Standard Datenbank-Moduls DBI und des MySQL
Datenbank-Moduls vom Standard-Repository (ActiveState):
ppm> install DBI
ppm> install DBD-mysql ppm> quit |
▼
Manche Module werden von der Fenster-Version des PPM nicht angezeigt, darunter z.B.
die wichtigen Grafik-Module GD. Man kann sie nur mit der Konsolen-Version laden, z.B. C:\> ppm install http://theoryx5.uwinnipeg.ca/ppms/GD.ppd
Zusätzlich gibt es je nach Repository noch eine ganze Familie spezieller GD Zusatz-Module. |
|
Man kann die Module auch downladen und lokal installieren.
Stellen sie vorher fest, welche Perl-Version installiert ist:
C:\> perl -version
|
Für ActivePerl finden sie die Module u.a. beim Hersteller
ActiveState, an der Univ.
Winnipeg oder bei Bribes. Achten sie darauf, die Module passend zu ihrer Perl-Version zu laden. Jedes Modul-Archiv enthält eine Mini-Anleitung zur offline-Installation. |
|
►
Laden von CPAN-Modulen: Dazu dient die Datei cpan.bat in ihrem Perl Installations-Verzeichnis. Das Programm führt selbst durch den Installations-Vorgang: C:\> cpan
|
Allerdings verlangt die CPAN-Installation eine Reihe von Hilfs-Programmen,
die sie zuerst laden, installieren und testen sollten. Hilfe zur Installation der zahlreichen ausgezeichneten CPAN-Module finden sie auf der CPAN-Webseite. |
|
►
Kompilieren einer individuellen Perl-Version oder von Perl-Modulen: Dazu benötigen sie den Quelltext von Perl bzw. allen Modulen, die eingebunden werden sollen (aus dem Internet oder von CD), sowie einen C-Compiler. |
Diese Variante kommt nur für gut ausgerüstete und ausgebildete EntwicklerInnen in Frage. |
Perl-Austausch Linux → Windows |
|
|
Perl ist (fast) voll kompatibel
Prinzipiell sind sauber programmierte Perl-Scripts zwischen beliebigen Betriebssystemen
voll kompatibel, d.h. der Quelltext (Code) funktioniert ohne Änderung auf jedem System.
|
Ausnahmen gibt es nur für Programmteile, die speziell für ein bestimmtes System erstellt wurden (z.B. Zugriff auf die Win Registry-Datenbank). |
|
shebang-Zeile
►
Auf Linux muss die erste Zeile jedes Perl-Programms
den shebang
enthalten - einen Verweis zum ausführenden Programm, und zwar ohne
Leerzeilen, Leerzeichen oder Tabulatoren, z.B.#!/usr/bin/perl
|
► Auf Windows wird diese Zeile von Konsolen-Programmen wie jeder andere Kommentar ignoriert. ► Der Apache-Webserver verwendet jedoch auch auf Windows die shebang-Zeile. Ein Perl CGI-Programm muss daher den Pfad zum Perl-Interpreter enthalten, z.B. #!C:\Programme\Perl\bin\perl.exe
|
|
Zeilen-Umbruch
Linux und Windows unterscheiden sich u.a. auch in einem kleinen Detail:Text-Editoren verwenden unterschiedliche Zeichen für einen Zeilen-Umbruch (neue Zeile, line feed): ► Linux verwendet das Steuerzeichen LineFeed (LF, dezimal 10. hex #0A) ► Windows verwendet die beiden Steuerzeichen CarriageReturn (CR, dezimal 13. hex #0D) und LineFeed (LF, dezimal 10. hex #0A) hintereinander. |
► Dieser Unterschied wird vom Perl-Interpreter ignoriert, d.h. Perl-Programme, die auf Linux (mit LF) erstellt wurden, laufen auch auf Windows (mit CR+LF) und umgekehrt. ► Einzige Ausnahme: Die erste Zeile mit dem shebang. Linux verlangt hier unbedingt das LineFeed ohne vorhergehendes CarriageReturn. Dieses eine Byte muss (nur) beim Kopieren eines Perl-Programms von Windows auf Linux korrigiert werden. ♦ Details zum ASCII-Zeichencode und zu Steuerzeichen. |
TricksEs gibt verschiedene Möglichkeiten, die shebang-Zeile eines Perl-Programms für die Übersiedlung von Windows nach Linux zu korrigieren.► Korrektur mit einem Text-Editor: Viele Text-Editoren (manchmal sogar auf Windows) bieten diese Option, z.B. kwrite oder kate den Menübefehl |
►
Korrektur mit einem Datei-Editor (Hex-Editor): Die
Windows-Zeichenfolge 0D0A am Ende der ersten Zeile wird
auf 0A0A geändert. Diese zusätzliche Leerzeile
wird auf Linux ignoriert. Manche Hex Editoren bieten dafür eigene Menü-Befehle oder erlauben das Anlegen eigener Macros für diesen Zweck. ► Viele Linux-Programme (nicht nur Text-Editoren) bieten die Möglichkeit, einen Regulären Ausdruck (Regular Expression,m RegExp) auf einen Text anzuwenden. Der RegExp für den Ersatz (replace, substitute) lautet /\x0D//g ► Wenn diese Aufgabe öfters auszuführen ist ist, kann man dafür ein kleines Perl-Programmerstellen. Damit kann man die ganze shebang-Zeile inkl. Umbruch-Zeichen nach Bedarf austauschen. |
Weiter mit Perl |
|
|
Perl-Fertig-Scripts
Im Internet finden sie zahlreiche Angeboite fertiger Perl-Script-Pakete. Das reicht vom
klassich einfachen Zugriffs-Zähler bis zu kompletten Group-Office Paketen.
|
Allen Paketen gemeinsam ist, dass sie eine funktionierende Perl-Installation voraussetzen. Tipp: Beginnen sie mit einfachen kleinen Scripts, bevor sie versuchen, größere Pakete in Betrieb zu nehmen. |
Perl-EntwicklungFür Perl wurden weltweit tausende Module und Bibliotheken mit allen nur denkbaren Funktionen erstellt. Fast alle stehen ihnen kostenlos im Web zur Verfügung. |
Einige Beispiele: CGI-Programme, Mail, FTP, Whois, SerialPorts, Datenbank-Zugriff, ODBC, OpenDocument, Grafik, Kalender, Sound, Mathematik, Statistik, Suchen & Sortieren, XML, PDF, LateX, ZIP, ..., auch Betriebssystem-spezifische Funktionen: OLE, Registry, named pipes, UserManagement, ... |
| Details zu Perl finden sie im Kapitel Perl-Programmierung und im Internet. | |
|
|
| eXtropia: Perl on Windows | |