use Net::SFTP::Foreign; my $sftp = Net::SFTP::Foreign->new( host => 'myserver.com', port => '22', user => 'ftpuser', more => [qw( -i myserver.private.key.ppk)], ssh_cmd => 'plink'); $sftp->die_on_error("Unable to establish SFTP connection"); my $entry = "abcd*.txt"; my $files = $sftp->ls ('/etc', wanted => qr/$entry/) or die "unable to retrive directory: ".$sftp->error;