Perl.
© 2006 H.M. Pragt
Perl (Practical Extraction and Report Language) is een programmeertaal gemaakt
door Larry Wall in 1987. Het is een samenvoeging van de mogelijkheden van
Programmeertaal C, sed, AWK en de Unix command shell. Larry Wall heeft Perl
gemaakt omdat hij een tool nodig had om informatie uit tekstbestanden te halen
en in rapportvorm te gieten. Een van de motto's van Perl is There is more than
one way to do it (Het kan op meerdere manieren gedaan worden), vaak afgekort
tot TIMTOWTDI en wie Perl code gezien heeft weet dat dit er gwaar is. Een
ander motto is The swiss army knife of programming languages (Het Zwitsers
zakmes van de programmeertalen), met behulp van Perl is bijna alles mogelijk.
Perl is script-programmeertaal, al zijn er (experimentele) compilers voor. Het wordt vaak
gebruikt op web-servers om CGI scripts te schrijven.
Perl is niet te koop, het is vrije software met een artistieke licentie (GPL).
Perl bestaat voor de meeste besturingssystemen; voor elke Unix soort bestaat het, en
de populariteit voor Microsoft Windows neemt snel toe.
Er bestaat een enorme hoeveelheid van vrij te verkrijgen modules en bibliotheken
van Perl programma's van wiskunde tot database, van netwerken tot PDF creatie, van
DVD-rippers tot XML validators. Perl programmeurs kunnen die terugvinden op het
Comprehensive Perl Archive Network, http://www.cpan.org/.
Perl is weliswaar een geïnterpreteerde taal, maar voordat het programma start
wordt de broncode vertaald naar bytecode, zoals bij Programmeertaal Java het geval
is, en deze bytecode wordt uitgevoerd. De taal is zeer snel.
De huidige versie van Perl is 5, en de ontwikkeling van versie 6 is in volle
gang. Perl 6 zal net als Perl 5 gebruik maken van een virtuele machine, maar de
VM van Perl 6 (genaamd Parrot) is ook geschikt voor andere talen.
Wat kunt u doen met Perl.
Perl is niet alleen geschikt voor het web, het is ook een hele krachtige script taal
om allerlei taken op uw pc mee uit te voeren. Er was een tijd dat wanneer ik even iets
moest converteren, een globale zoek en vervang moest uitvoeren of logfiles moest
doorzoeken, ik even snel een Perl scriptje maakte of nog erger het even vanaf de
commandline met perl uitvoerde. Nog steeds gebruik ik Perl wanneer ik databestanden
moet converteren en ik heb bijvoorbeeld ook een script gemaakt dat uit de webserver
log alle zoekmachines en de zoekwoorden netjes in een lijstje zet.
Dit zijn typisch dingen waar Perl heel geschikt voor is, het is een enorme doos met
utility programma's. Perl werkt ook perfect onder Windows, voer de volgende stappen uit
om Perl op uw systeem te installeren.
Perl downloaden en installeren op een Windows systeem.
Download het MSI bestand van http://www.activestate.com/Perl.plex?hdr=1
Na het downloaden kunt u gewoon dubbelklikken op het .msi bestand en de installatie zal
netjes uitgevoerd worden. Na de installatie heeft u perl compleet met een groot aantal
bibliotheken en een package manager (waarmee u extra modules kunt downloaden) op uw systeem staan.
Test of het werkt.
Maak met Notepad (of elke andere puur tekst gebaseerde editor) een bestandje aan
dat test.pl heet en zet er de volgende 2 regels tekst in:
#!c:\perl\bin\perl.exe
print "Hallo wereld!";
Start nu de ms-dos prompt (Start / uitvoeren / cmd) en ga met behulp van cd naar
de map waar het test.pl bestandje staat. U kunt door middel van de volgende regel het
script uitvoeren:
Als alles goed is gegaan zal de uitvoer het volgende zijn:
U heeft nu uw eerste perl script geschreven.
Wat betekent nu die eerste regel?
Perl is oorspronkelijk geschreven op het Unix platform als een shell scripting taal.
Wanneer u in Unix een bestand wilt uitvoeren kijkt de shell eerst of het een programma
of een script is en zal dan de eerste regel lezen om te zien welk programma dat gestart
moet worden om dit bestand uit te voeren. Onder Windows zal deze regel genegeerd worden,
het is echter wel raadzaam deze regel goed in te vullen wanneer u het script ook onder
Unix wilt gebruiken.
Perl zoek en vervang in meerdere bestanden tegelijk.
Dit is een hele handige functie om in meerdere bestanden een zoek en vervang te doen.
Dit is zeer handig als u bijvoorbeeld in 100 html bestanden 2004 in 2005 moet veranderen.
Van is het woord dat vervangen moet worden, naar is de nieuwe tekst.
/g staat voor global
perl -pi -e 's/van/naar/g' *.fileExtensie
/i staat voor ignore case
perl -pi -e 's/van/naar/gi' *.fileExtensie
Voorbeeld 2004 naar 2005
perl -pi -e 's/2004/2005/gi' *.html
Naslagwerken en handleidingen.
|