in reply to Re^2: Finding directories at a variable depth
in thread Finding directories at a variable depth

And if i wanted only directories of level 2 and not of level 1?

  • Comment on Re^3: Finding directories at a variable depth

Replies are listed 'Best First'.
Re^4: Finding directories at a variable depth
by zentara (Cardinal) on Aug 02, 2012 at 11:13 UTC
    This is only briefly tested. The problem with only getting level 2 and not 1, is that you can't prune level 1, without pruning level 2. This script is only briefly tested, play with it. Instead of prune, use a simple return.
    #!/usr/bin/perl # linux only use warnings; use strict; use File::Find; use File::Spec; my ($path, $depth)= ('.', 2); my $abs_path = File::Spec->rel2abs($path); #in case you enter . for di +r my $m = ($abs_path) =~ tr!/!!; #count slashes in top path find (\&found,$abs_path); exit; sub found{ my $n = ($File::Find::name) =~ tr!/!!; #count slashes in file print "$m $depth $n "; return unless $n == ($m + $depth ); # do stuff here. #print "$_\n"; #name only print "$File::Find::name\n"; #name with full path }

    I'm not really a human, but I play one on earth.
    Old Perl Programmer Haiku ................... flash japh