Thread Package: libtimedate-perl use File::stat; "use" not allowed in expression at (16 answers)
Opened by hcx at 2011-07-12 17:27

Linuxer
 2011-07-12 18:45
#150330 #150330
User since
2006-01-27
3891 Artikel
HausmeisterIn

user image
SO, hier mal ein einfacher Schnellschuss, der nur kontrolliert und Ausgaben auf STDOUT generiert:

Code (perl): (dl )
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/bin/perl
# vim: set ts=4 sw=4 et sta:
use strict;
use warnings;
use File::Spec;

my $dir = '/var/mail';
my $max_age = 30;


sub read_dir {
    my $dir = shift;

    # no input, no result
    return () if !defined $dir;

    opendir my $dh, $dir or die "$dir: $!\n";

    # read entries from directory, exclude . and ..
    # create path for and to each entry and store
    # results in @entries
    my @entries =
      map { File::Spec->join( $dir, $_ ) }
        grep { ! m{\A\.\.?\z} }
          readdir $dh;

    closedir $dh;

    return @entries;
}



### MAIN

my @to_check = read_dir( $dir );

for my $entry ( @to_check ) {
    if ( -M $entry > $max_age ) {
        print "$entry is older than $max_age.\n";
    }
}
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Package: libtimedate-perl use File::stat; "use" not allowed in expression at