my $out = $ssh->capture({stdin_data => <<'EOS'}, '/usr/bin/perl'); # Your remote script goes here: use File::Find::Rule; use POSIX qw(strftime); ... EOS #### my $sftp = $ssh->sftp; my $now = time; my @files = $sftp->find("/mypath", wanted => sub { my $e = $_[1]; $e->{filename} =~ /\.0$/ or return; $e->{a}->mtime + 3600 >= $now or return; 1 });