Re: Help with syntax
- From: "kens" <kenslaterpa@xxxxxxxxxxx>
- Date: 29 Jan 2007 16:20:21 -0800
On Jan 29, 6:35 pm, "kramer31" <kramer.newsrea...@xxxxxxxxx> wrote:
Hi. I used perl a few years ago and found it to be wonderfully
powerful, but I don't have my old code (it's proprietary) and I seem
to have forgotten some of the subtelties of the language including how
to use references properly ... I'm using strict here to help catch
some of these subtle errors at compile time.
Anyway, can someone look at the code and tell me what the *bleep* I'm
doing wrong here?
#!/usr/bin/perl -w
use strict;
sub checkDir {
my $curDir = $_[0];
my %files = %{$_[1]};
my $file;
chdir($curDir);
my @directories;
my @listing=`ls`;
my $fileType;
my $myDir = `pwd`;
foreach $file (@listing) {
print "list: $file";
$fileType=`file $file`;
if($fileType =~ /directory/) {
print "Added to directory\n";
push @directories, $file;
}
else {
if($fileType !~ /symbolic/) {
print "regular file\n"
if(! exists $files{ $file }) { #b
my @tmpArray;
$files{ $file } = \@tmpArray;
}
push @{ $files{ $file } }, $myDir; #a
}
}
}
}my $curDir = `pwd`;
my %files = ();
checkDir($curDir, \%files);
#end of code
The error at line labeled # a is:
"my" variable %files masks earlier declaration in same scope
The error at line labeled #b is:
syntax error
Any help would be much appreciated.
Put a semicolon at the end of this line:
print "regular file\n"
HTH, Ken
.
- Follow-Ups:
- Re: Help with syntax
- From: kramer31
- Re: Help with syntax
- References:
- Help with syntax
- From: kramer31
- Help with syntax
- Prev by Date: Re: how to flush a file
- Next by Date: Re: Help with syntax
- Previous by thread: Help with syntax
- Next by thread: Re: Help with syntax
- Index(es):
Relevant Pages
|
|