my $os_says = ''; my $pl_says = ''; if ( open FH, '/home/foo/bar.csh' ) { while () { # no warnings; eval { $os_says .= `$_` }; # <- Fixed. Thanks Roger! if ($@) { $pl_says .= $@ } } print "OS says: $os_says \n"; print "Perl says: $pl_says \n"; }