use Fcntl ':mode'; my $mode = ...; if (S_ISDIR($mode)) { # directory ... } #### my $ssh2 = Net::SSH2->new(); my $sftp = $ssh2->sftp(); my %fstat = $sftp->stat("${testdir}"); my $perm = $fstat{"mode"} & 07777;