in reply to General Question: File triggered job launcher
Instead of a foreach loop you could use map to map your jobs onto each file.use Fcntl qw/:flock/; #list of directories to look in my @directoryList=('/dir/dir1','/dir2'); #for each dir foreach my $dir (@directoryList){ #open dir opendir(DIRHANDLE, "$dir ") or die "could't open dir $!"; #create array of files present in dir my @files= grep(!/^\./,readdir(DIRHANDLE)); #for each file test open and test lock foreach my $file (@files){ open FILE , "/$dir/$file" || die "Could not open"; #if lock obtained do your job if (flock (FILE,LOCK_EX)){ #do your job on $file } } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: General Question: File triggered job launcher
by rob_au (Abbot) on Nov 28, 2001 at 18:43 UTC |