#!/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";