Отследите файл, как только он будет готов.
my ($output) = `ssh login.com ls /tmp/ > filename 2>&1;cat filename`
print "\n=========$output============";
Редактировать: Если важно сохранить код выхода (и я думаю, что ответы в https://stackoverflow.com/a/9784064/1137055 более полные и менее хакерские):
`ssh login.com ls /tmp/ > filename 2>&1`; # run command and output to a file
my $code = $?;
my $output = { local $/ = undef; open FILE, "file" or die "Couldn't open file: $!"; $string = <FILE>; close FILE; } # "slurp" the file in using perl
print "\n=========$output============$code========\n";
Или еще менее идеальное решение:
`ssh login.com ls /tmp/ > filename 2>&1`; # run command and output to a file
my $code = $?;
my $output = `cat filename` # read the file by shell
print "\n=========$output============$code========\n";