My friend, you *must* use strict + warnings... It would make life so much easier for you! In the long run all this extra crap like Taint will become your security blankets intead of mean ol granpa
This is part of your script fixed up to help you debug:
(This code is untested!)
#!/usr/bin/perl -w
use strict;
use File::Slurp;
my $basedir = '/home/rjs/perl/perlnut';
opendir(DIR, $basedir) or die $!;
my @files = readdir(DIR); # name arrays plural, hashes singular
closedir DIR;
my $outfilename = 'final.htm';
my $outfilesrc = undef;
+
foreach (sort @files){
$outfilesrc.= File::Slurp::slurp("$basedir/$_");
}
open(OUT, "> $basedir/$outfilename") or die ("Can't open for writing:
+$basedir/$outfilename : $!");
print OUT $outfilesrc;
close OUT;
exit;
File::Slurp might be of interest to you here.
And for the love of Cindy Lauper and Ayn Rand; doing this in perl on a *ix system would be simply *&%^#%!!. Open a terminal and use cat instead:
# cat /home/rjs/perl/perlnut/*htm > /home/rjs/perl/perlnut/final.htm
|