in reply to Correct way to capture command output to a file in Perl.

Have you looked at Capture::Tiny? ...a third way, but it works great.

From the synopsis:

use Capture::Tiny ':all'; # capture from external command ($stdout, $stderr, $exit) = capture { system( $cmd, @args ); };

Dave