Thread Perlskript (8 answers)
Opened by Gast at 2006-05-09 22:39

Taulmarill
 2006-05-10 13:16
#7554 #7554
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
ok, also erst mal zur zeile
Code: (dl )
for(my $i=0; $i<@ARGV; $i++) { process($ARGV[$i]); }

wenn man über einen array iteriert kann man das auch direkt tun, mit foreach. da for ein alias für foreach ist, können wir das folgendermassen schreiben
Code: (dl )
for my $arg ( @ARGV ) { process( $arg ) }

jetzt müssen wir nur noch was mit den sternchen machen, da diese nicht von der shell, sondern von deinem program in eine liste von dateinamen umgewandelt werden muss. dafür kann man die funktion glob benutzen, das bringt uns zu folgendem
Code: (dl )
1
2
3
4
5
for my $glob ( @ARGV ) {
for my $file ( glob $glob ) {
process $file;
}
}

oder etwas abgekürzt:
Code: (dl )
process $_ for map glob, @ARGV;

ich hoffe das bringt dich schon mal einen schritt weiter.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B

View full thread Perlskript