my $result = eval { close $fh }; unless ($result) { print "Got an error: $@\n"; } #### my $result = eval { open my $fh, '-|', 'bash -c "echo Hello; exit 1"'; print for <$fh>; close $fh; }; ...