From 32d8b0131bea5bb8dbd485643c9c126064055b5f Mon Sep 17 00:00:00 2001 From: Guilhem Moulin Date: Fri, 17 Feb 2012 18:33:18 +0100 Subject: removing empty dirs (fix) --- videorm.pl | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'videorm.pl') diff --git a/videorm.pl b/videorm.pl index c4046e4..d05da9f 100755 --- a/videorm.pl +++ b/videorm.pl @@ -152,6 +152,11 @@ my $file = basename ($ARGV[0]); my $file_s = catfile ($symlinks, $file); my $file_d; $file_d = catfile ($symlinks, readlink $file_s) if -l $file_s; +my $director; +if (-l $file_s) { + my @director = File::Spec->splitdir(readlink $file_s); + $director = $director[2] if $#director >= 2; +} # Connect to database @@ -184,6 +189,15 @@ my $r = 0; &ack ( "Deleting target... ", (defined $file_d) && -f $file_d && unlink $file_d ); +if (defined $director) { + opendir my $DIR, catdir($directors, $director) or die "Can't open: $!"; + if (scalar(grep(!/^\.\.?$/, readdir $DIR) == 0)) { + &ack ( "Removing empty dir...", + rmdir catdir($directors, $director) ); + } + closedir $DIR or die "Can't close: $!"; +} + $dbh->disconnect(); exit $r; -- cgit v1.2.3