in reply to Output capturing trouble
my $output=`unzip -P $password $zipfile 2>&1`; [download]
The return code ($?) probably indicate whether an error has occured or not.
Update: I had said $& where I meant to say $?. Fixed. Thanks shmem.