Wening Andreas wrote:
> Hi,
> I think this is a simple one but I guess I'm blind and need some help.
> I have a directory full of files and want to look into each file for a
> specific string, as soon as I found this I would like to do some actions
> (move its to another folder) and go over to the next file. With the while
> statement I always read through the whole file. Any suggestions?
>
> ==snip===
> $badmail = "C:\\something";
> $search = "some string";
> opendir (h_dir, $badmail) or die "Can't open $badmail, $!\n";
> @dir = readdir h_dir;
> foreach $file (@dir) {
> if (-d $file) {next}
> else {
> $flag = 0;
> $filename = c_smtpssl_badmail.$file;
> open h_file, "<$filename" or die "Can't open file
> $filename, $!\n";
> while (<h_file>) {
> if (/$search/) {$flag = 1}
last will break out of a while:
last if /$search/;
> }
> close h_file;
> }
> if ($flag) {
> move ($filename, $location1.$filename);
> }
> else {
> move ($filename, $location2.$filename);
> }
> }
> closedir h_dir;
>
> ==snip===
> _______________________________________________
> Perl-Win32-Admin mailing list
> [EMAIL PROTECTED]
> To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
>
>
--
,-/- __ _ _ $Bill Luebkert ICQ=14439852
(_/ / ) // // DBE Collectibles Mailto:[EMAIL PROTECTED]
/ ) /--< o // // http://dbecoll.tripod.com/ (Free site for Perl)
-/-' /___/_<_</_</_ Castle of Medieval Myth & Magic http://www.todbe.com/
_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs