As for the script running again on occaision, it maybe that the way you setup your argument list is being interpreted by the backticks and shell as some secondary argument. It can get tricky to pass an options list properly. You might want to investigate whether the line
might be better setup asmy @result = `command --arg1=$num1 --arg2=file.log . . . -argLast=$nu +mLast`;
It may take some experimentation to figure out the array element boundaries, it maybe that the first 2 options need to be in one array element. It can get mind-boggling, as I remember trying to figure out how to feed options to tar this way.my @options = qw(--arg1=$num1, --arg2=file.log, . . . -argLast=$numLa +st ); my @result = `command @options`;
Finally, you may want to consider running the command with IPC::Open3, or a similar IPC module, which can separate out the stdout and stderr, giving you more clues as to what is happening.
In reply to Re: Backtick caught in infinite loop
by zentara
in thread Backtick caught in infinite loop
by tau1777
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |