Perl er et spændende og meget anvendeligt sprog. C og C++ er i mange tekniske sammenhænge en de facto standard, men disse programmeringssprog er ikke ret velegnede til tekst-manipulationer. Der skal allokeres den rette mængde hukommelse, og det er ofte svært at kunne beregne, hvor meget man skal bruge. Perl er som skabt til at behandle tekst. Perl er et fortolket sprog, som BASIC er det.
Check, om du har installeret Perl, ved at skrive
[daisy@linus daisy]$ rpm -q `which perl` |
Du kan også checke, om Perl er installeret ved at skrive
[daisy@linus daisy]$ perl -v |
Indtast følgende program, og gem det som leg_med_perl
#!/usr/bin/perl @a="hej"; @b=(@a,"igen"); print "Arrayet \@b har værdierne : @b\n"; printf "Der er %i elementer i \@b\n",$#b+1; foreach $indeks (@b) { print "Ud kommer $indeks fra arrayet\n"; } $c = "hvad med at "; $d = "sætte strenge sammen"; $e = $c.$d; print "Variablen \$e har værdien : $e\n"; |
Programmet skal gøres eksekverbart ved at skrive
[daisy@linus daisy]$ chmod +x leg_med_perl |
[daisy@linus daisy]$ ./leg_med_perl Arrayet @b har værdierne : hej igen Der er 2 elementer i @b Ud kommer hej fra arrayet Ud kommer igen fra arrayet Variablen $e har værdien : hvad med at sætte strenge sammen |
Der er selvfølgelig et par små tricks i dette lille program, men det væsentlige at lægge mærke til er, at der ikke reserveres hukommelse til nye variable, og det er legende let at arbejde videre med.
Hvad med følgende lille søde program, som tager et filnavn som input og erstatter samtlige forekomster af Microsoft med navnet Linux? Det er et program, som slet ikke kan laves så elegant og kort som i Perl.
#!/usr/bin/perl -i.bak -p s/Microsoft/Linux/g; |
Vi kan også nævne, at du kan gøre dine Perl programmer uafhængig af Perl-placeringen (om det er /usr/bin/perl eller /usr/local/bin/perl) ved at starte følgende tre liner før selve programmet. Der erstatter så den første linje.
: # Use perl eval 'exec perl -S $0 "$@"' if $running_under_some_shell; print "Det virker\n"; |
Hvis du nu har fået blod på tanden og vil i gang med at lære Perl, er disse to bøger standardværkerne, den ene til at komme i gang på, den anden for viderekomne:
Randal L. Schwartz & Tom Christiansen: Learning Perl (2nd Edition), O'Reilly & Associates, Inc., ISBN 1-56592-284-0, 271 sider.
Larry Wall, Tom Christiansen & Randal L. Schwartz: Programming Perl (2nd Edition), O'Reilly & Associates, Inc., ISBN 1-56592-149-6, 645 sider.