summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/perl/eg/dus
blob: 5ea7d0456be101f5e46fff9a386a47351856d1c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl

# $RCSfile: dus,v $$Revision: 1.3 $$Date: 1999/04/29 22:51:17 $

# This script does a du -s on any directories in the current directory that
# are not mount points for another filesystem.

($mydev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
   $blksize,$blocks) = stat('.');

open(ls,'ls -F1|');

while (<ls>) {
    chop;
    next unless s|/$||;
    ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
       $blksize,$blocks) = stat($_);
    next unless $dev == $mydev;
    push(@ary,$_);
}

exec 'du', '-s', @ary;