Ich habe folgendes Script:
#!/usr/bin/perl
## printenv -- demo CGI program which just prints its environment
use CGI;
use CGI::Carp qw(fatalsToBrowser);
my $cgi = CGI->new;
print $cgi->header();
print &template("./printenv/_env_t.tpl");
foreach $var (sort(keys(%ENV)))
{
$val = $ENV{$var};
$val =~ s|\n|\n|g;
$val =~ s|"|\"|g;
$val =~ s|,|, |g;
print &template("./printenv/_env.tpl");
}
print &template("./printenv/_env_b.tpl");
exit;
sub template {
local(*FILE);
local($file);
local($HTML);
$file = $_[0] || die "Template: Es wurde keine Template-Datei definiert.\n";
open(FILE, "<$file") || die "Template: Konnte $file nicht öffnen: $!\n";
while (<FILE>) {
$HTML .= $_;
}
close(FILE);
$HTML =~ s/$(\w+)/${$1}/g;
return $HTML;
}
Das läuft.
Gruß HenKHan