in reply to Re^2: following if condition fails to print its variable using perl?
in thread following if condition fails to print its variable using perl?
start here
See what you can determine from thatsub rename_dirs { my ( $top_dir, $name_map, $regex ) = @_; print "start rename dirs $top_dir, $name_map \n"; opendir (my $dh, $top_dir) or die "Can't open $top_dir: $!"; my $save_dir = getcwd(); chdir $top_dir; while (my $name = readdir $dh) { next if ($name eq '.') or ($name eq '..'); print 'name :'.$name,"\n"; if ( ( -d $name ) && ( exists $name_map->{$name} ) ) { my $new_name = $name_map->{$name}; print 'newdir :'.$new_name."\n; rename_file_or_dir( $name, $new_name ); $name = $new_name; } elsif ( -f $name ) { if (( my $base_name = $name) =~ s/\.config$// ) { if ( $name_map->{$base_name} ) { my $new_name = $name_map->{$base_name} . '.config' +; print 'newfile:'.$new_name."\n; # print $new_name; rename_file_or_dir( $name, $new_name ); change_file( $mapfile, $name_map, $regex ); } } } if ( -d $name) { print "down :'.$name."\n"; rename_dirs( $name, $name_map, $regex ); print "up :'.$name."\n"; } } chdir $save_dir; }
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^4: following if condition fails to print its variable using perl?
by finddata (Sexton) on Mar 15, 2017 at 09:16 UTC | |
by marto (Cardinal) on Mar 15, 2017 at 10:10 UTC | |
Re^4: following if condition fails to print its variable using perl?
by finddata (Sexton) on Mar 15, 2017 at 09:27 UTC | |
by huck (Prior) on Mar 15, 2017 at 09:58 UTC |
In Section
Seekers of Perl Wisdom