Since you are printing the directories on the way out you should be able to just do the following:
use strict;
use warnings;
use File::DirWalk;
my $folder = 'E:\test\foldersize\1-folder|E:\test\foldersize\2-folder|
+E:\te
+st\foldersize\5-folder';
my $depth = 3;
my @directory = grep!/^\s*$/, split/\|/, $folder;
my @folder;
my %dirs;
for my $directory (@directory){
my $dw = new File::DirWalk;
$dw->onDirLeave(
sub {
my ($dir) = @_;
if ( !exists $dirs{$dir} ) {
if( $dir =~ /(.*)\\/ ) { undef($dirs{$1}); }
push (@folder, $dir);
}
return File::DirWalk::SUCCESS;
}
);
$dw->setDepth($depth);
$dw->walk($directory);
}
print $_,$/ for @folder
and hence it won't print any directory that has any directories in it.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|