in reply to Running perl script with open command

You forgot to mention what your problem is :)

Essentially, what you've attempted should work, presuming you fill in appropriate values for the variables you haven't defined here...

What looks a bit weird, though, is this piece

$counter++; if ($counter < 18) { print "\n-E- TimeOut.\n"; exit 1; }

Depending on what value $counter starts with, it will either exit immediately (after the first line having been read), or never. I.e. in case $counter starts with 18 or greater, incrementing it further will not make the condition $counter < 18 ever become true...