Matthew Tod has asked for the wisdom of the Perl Monks concerning the following question:
I have so little experience with Perl I shouldn't even be attempting to write this script but it would be darn handy if I can make it work.
I'm trying to get the all of the files from a specific directory which contain 10.xx.11 and move them into another directory. The operation seems to go okay until Perl attempts to move the array elements. I get a "no such file or directory" message pointing to the line containing the move command. I know the directory exists at the correct location. Any help would be much appreciated.
#!/usr/bin/perl -w use strict; use warnings; use diagnostics; use File::Copy; my (@files) = (); my ($file) = 0; my ($directory) = "directory"; opendir (DIR, $directory) || die "could not open $directory: $!\n"; @files = grep {/^10/} readdir DIR; closedir DIR; print("You are moving the following files to another location\n"); foreach $file (@files) { print $file . "\n"; } my ($newlocation) = "target"; foreach my $file (@files) { move($file, $newlocation) || die "could not move files: $!\n"; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: No such file or directory when moving grep results
by toolic (Bishop) on Nov 10, 2011 at 18:04 UTC | |
by Matthew Tod (Initiate) on Nov 10, 2011 at 18:09 UTC | |
|
Re: No such file or directory when moving grep results
by RichardK (Parson) on Nov 11, 2011 at 11:25 UTC |