in reply to exit the loop corrected
while ( $theSubBuild ne 'sci.bld' || 'esel.bld')
is equivalent to
while ( $x ne 'ya' || 1 )
I assume you meant for the loop to stop if $theSubBuild is equal to either of your strings. What Perl is doing is seeing if either of the expressions on both sides of the || are true. 'esel.bld' will always be true.
What you probably want is:
while ( $theSubBuild ne 'sci.bld' && $theSubBuild ne 'esel.bld')
Update: Fixed a bit of spelling and added comments since I was editing anyways.
I'm uneasy about the grep system call into a file and then reopening the file. I'd rather just read from a pipe if I was going to use the system grep through a bunch of files.
I tend to just read the files and get my info that way and leave the OS out of it.
|
---|