Backticks are for when you want to capture the output of some shell command. In this case, you're redirecting output to a file, so backticks won't do that. Your backticks also don't give you anything in a void context.
That said, putting the same thing in system won't help either. It's the underlying grep that's hanging.
I think that grep needs to get some arguments. You could do this, minimally:
`grep -v $removeq $sourcefile /dev/null /dev/null > $tempfile`;
That won't hang, but it also won't work until $removeq and $sourcefile are right. You probably ought to be passing them in initially:
&clean_the_file( $sourcefile, $removeq );
I can't tell what $sourcefile should be, though.
Hope this helps.
In reply to Re^3: Program unsuspectingly dies with no reason why.
by kyle
in thread Program unsuspectingly dies with no reason why. -FIXED!
by misconfiguration
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |