Bei topegs Code musst Du noch einen Header senden...
Z.B.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use CGI::Carp qw/fatalsToBrowser/;
print CGI::header('text/plain');
# Sicherstellen, dass es in dem Verzeichnis, in dem das
# Skript liegt auch ein Verzeichnis "Variables" existiert,
# in dem eine Datei "messages.txt" liegt.!!!!!!!!!
my $file = './Variables/messages.txt';
##################
# Liest rückwärts vom Dateiende
# aus einem Dateihandle
# die angebene Anzahl von Zeilen.
# übergebene Werte:
# 1. Das Filehandle
# 2. Die Anzahl der Zeilen
# Liefert ein Array mit den gelesenen Zeilen zurück.
#
# Der Identifikator für das Zeilenende
# wird aus $/ gelesen.
sub read_back($$)
##################
{
my ($fh,$lines)=@_;
my $line_cnt=0;
my $data='';
seek($fh,0,02);
my $pos=tell($fh);
while($line_cnt < $lines and $pos > 0)
{
$pos--;
seek($fh,$pos,00);
my $bite=getc($fh);
$line_cnt++ if($bite eq $/);
}
return <$fh>;
}
open(my $fh, '<', $file) or die "$!\n";
my @lines = read_back($fh,5);
close($fh);
print 'Zeilen = '.@lines.":\n".join('',@lines)."\n";