summaryrefslogtreecommitdiffstats
path: root/move/tools/busy-files-accesses
blob: 72dbc119b10166744d24235460fe0b9267e7804a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/perl

use MDK::Common;
use Getopt::Long;

GetOptions('no-link' => \ (my $no_link), 
	   'no-dir' => \ (my $no_dir),
	   'full-dirs=s', \ (my $full_dirs),
);

if ($full_dirs) {
    my @l = map { chomp_(MDK::Common::File::cat_or_die($_)) } split(' ', $full_dirs);
    $full_dirs = '/tmp/live_tree(' . join('|', map { quotemeta } @l) . ')/';
}

my ($file_list) = @ARGV;
foreach my $file (cat_($file_list)) {
    chomp $file;

    $file =~ m!/tmp/live_tree! or next;

    if (-l $file ? !$no_link : -d $file ? !$no_dir : 1) {
	my $s = $full_dirs && $file =~ /^$full_dirs/ ? "/tmp/live_tree$1" : $file;
	push @l, $s;
    }
}

print "$_\n" foreach uniq(@l);