Leser: 7
![]() |
|< 1 2 3 4 5 6 7 8 >| | ![]() |
74 Einträge, 8 Seiten |
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
#!/usr/bin/perl
use strict;
use warnings;
##################
# 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, '<', './read_backwards_test.txt') or die "$!\n";
my @lines = read_back($fh,5);
close($fh);
print 'Zeilen = '.@lines.":\n".join('',@lines)."\n";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use lib qw(/home/www/web33/html/cgi-bin/test/ReadBackwards.pm);
use File::ReadBackwards;
my $cgi = CGI->new();
print $cgi->header('text/plain');
my $file = './Variables/messages.txt';
my $frb = File::ReadBackwards->new( 'log_file' ) or
die "can't read 'log_file' $!";
for(0..9){
print $frb->readline();
}
use CGI::Carp qw/fatalsToBrowser/;
1
2
3
4
5
6
7
8
9
10
11
12
01te Zeile
02te Zeile
03te Zeile
04te Zeile
05te Zeile
06te Zeile
07te Zeile
08te Zeile
09te Zeile
10te Zeile
11te Zeile
12te Zeile
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
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use CGI::Carp qw/fatalsToBrowser/;
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 "Content-type: text/plain \n\n";
print 'Zeilen = '.@lines.":\n".join('',@lines)."\n";
1
2
3
4
5
6
[... # Dein Code copy&past ...]
open(my $fh, '<', './pm_groups.txt') or die "$!\n";
my @lines = read_back($fh,20);
close($fh);
print 'Zeilen = '.@lines.":\n".join('',@lines)."\n";
1
2
3
4
5
6
7
8
9
10
11
Zeilen = 10:
Kaiserslautern.pm - kaiserslautern...
Berlin.pm - berlin...
Erlangen.pm - Erlangen...
Bielefeld.pm - bielefeld...
Ruhr.pm - ruhr-pm...
München.pm - perl-mongers...
Köln.pm - cologne...
Koblenz.pm - koblenz...
Paderborn.pm - paderborn...
Chemnitz.pm - chemnitz...
use CGI::Carp qw/fatalsToBrowser/;
1
2
3
4
5
6
7
8
9
10
11
12
01te Zeile
02te Zeile
03te Zeile
04te Zeile
05te Zeile
06te Zeile
07te Zeile
08te Zeile
09te Zeile
10te Zeile
11te Zeile
12te Zeile
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
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use CGI::Carp qw/fatalsToBrowser/;
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";
![]() |
|< 1 2 3 4 5 6 7 8 >| | ![]() |
74 Einträge, 8 Seiten |