File: newsq.pl

package info (click to toggle)
leafnode 1.12.0-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,496 kB
  • sloc: ansic: 10,961; sh: 1,709; xml: 627; makefile: 259; perl: 84; sed: 4
file content (27 lines) | stat: -rwxr-xr-x 653 bytes parent folder | download | duplicates (16)
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
#!/usr/bin/perl

$spooldir = "/var/spool/news";

undef $/;
if ( chdir "$spooldir/out.going" && opendir( DIR, "." ) ) {
    @files = readdir( DIR );
    closedir( DIR );

    foreach (@files) {
	if ( open(F, "< $_") ) {
	    undef $subject, $newsgroups, $from;
	    $_ = <F>;
	    close F;
	    s/\n\n.*//s;
	    s/\r//gs;
	    s/\n\s+/ /sg;
	    foreach ( split( /\n/, $_ ) ) {
		$subject = $1 if ( /^Subject:\s+(.*)/i );
		$newsgroups = $1 if ( /^Newsgroups:\s+(.*)/i );
		$from = $1 if ( /^From:\s+(.*)/i );
	    }
	    print $from, " in ", $newsgroups, "\n\t", $subject, "\n", 
		if ( $subject ne "" && $from ne "" && $newsgroups ne "" );
	}
    }
}