in reply to fork and kill process

Don't try to do this with fork and kill. Instead, take the path suggested in the earlier reply by rbc and use elements of the LWP package. It will take a little more work than the LWP::Simple-based example, but you can set a timeout on the user-agent object before sending the request, which is a better way of handling the 60-second limitation. You aren't doing anything else in that 60 seconds anyway, and trying to do this with fork and kill will mean setting up a $SIG{CHLD} handler, and I doubt you want to get into that mess.

Using the LWP classes is pretty simple:

use LWP::UserAgent; use HTTP::Request; $UA = LWP::UserAgent->new; $UA->timeout(60); $response = $UA->request(HTTP::Request->new('GET', $url); # You may now operate on $response->content(). # Be certain you test for success with $response->is_success

--rjray

Update: I forgot to point out initially another flaw in the fork/kill approach. By running the wget in the child and assigning it to a variable within that child, the parent would not have access to that variable unless you wrote some IPC-management to share the memory between the child and parent processes. In other words, use LWP. You'll soon see why so many of us swear by it.