Thread Hilfe Bei Perl... (14 answers)
Opened by Gast at 2006-04-15 22:04

Strat
 2006-04-19 21:12
#37224 #37224
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
wenn man sich gewisse sachen angewoehnen sollte, wieso dann nicht auch gleich nicht-globale dateihandles verwenden? Dann ist man von aussen noch unabhaengiger, kann auch auf local FH verzichten und koennte auch filehandles einfach an subroutinen uebergeben, z.B.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
open( my $FH, '<', $file )
or die "Error: can't open file '$file': $!\n";
while( my $fileX = <$FH> ) {
chomp($fileX);
if (-f $fileX) {
my @data = &ReadFile($fileX);
print "# Reading $fileX\n", @data;
} # if
} # while
close ($FH);

sub ReadFile {
my $filename = shift;

open( my $FH, '<', $filename )
or die "Error: couldn't open file '$filename': $!\n";

my @lines = <$FH>;

close( $FH ); # eigentlich ueberfluessig

return @lines;
} # ReadFile

versucht sowas mal ohne die lexikalischen filehandles...

das drei-parametrige open kann sicherer sein, weil man da nicht so einfach pipe-zeichen reinbringen kann, die dann was als programm ausfuehren... aber trotzdem sollte man mit taint arbeiten und ueberpruefen, ob $file einen erlaubten inhalt hat, wenn ein benutzer die moeglichkeit hat, den zu aendern
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Hilfe Bei Perl...