Usenet-Artikel finden (was: Re: [Debian] Frage an pan Experten)
> Zweitens: Wenn ich tausend postings vor mir sehe, dann wär es
> obendrein praktisch, wenn die Zeile in der mein Name vorkommt
> durch eine Farbe hervorgehoben wäre.
Ich habe für sowas ein Extraprogramm, daher ist es für jeden
Newsreader (mit .newsrc) geeignet :-)
--cut-here--
#!/usr/bin/perl -w
use strict;
use News::Newsrc;
use Set::IntSpan;
use News::NNTPClient;
my $newsrc = new News::Newsrc; $newsrc->load or die "Cannot load .newsrc: $!\n";
my $nntp = new News::NNTPClient("localhost", 119) || die "Cannot open newsserver: $!\n";
$nntp->mode_reader; my $toread = 0; $nntp->debug(0);
GROUP: for my $group (sort $newsrc->sub_groups) {
my $read= Set::IntSpan->new($newsrc->get_articles($group));
my ($first, $last) = $nntp->group($group);
if ($first == 0 || $last == 0) { next GROUP; }
if (!defined($read) || !defined($read->max)) { next GROUP; }
if ($read->max > $last) { next GROUP; }
my $avail = Set::IntSpan->new("$first-$last"); $read = run_list $read;
my $diff = diff $avail $read; my $diff1 = run_list $diff;
my $unread = cardinality $diff; $toread += $unread;
next GROUP unless $unread; my $got = 0;
print STDERR "$group ";
ART: for (my $art = $diff->first; defined $art; $art=$diff->next) {
next ART unless $nntp->stat($art);
$got++; my @article = $nntp->article($art);
for (@article) {
if (/FOO/oi || /BAR/oi) { print "Group: $group Article: $art\n"; print @article; print "\n"; next ART; }
}
}
print STDERR "$got"; if ($got != $unread) { print STDERR " !!!"; }; print STDERR "\n";
}
if ($toread) { print STDERR "$toread\n"; }
--cut-here--
Als "newsgrep" abspeichern, FOO und BAR anpassen und dann mit
newsgrep >artikel.txt && less artikel.txt
suchen und lesen.
HTH
--
"I'm working on it." <http://www.psyche.kn-bremen.de/>
<http://www.amazon.de/exec/obidos/wishlist/AQP0BN7EPJIH>
--
-----------------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie bitte eine
E-Mail an debian-user-de-request@lehmanns.de die im Subject
"unsubscribe <deine_email_adresse>" enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@Lehmanns.de
-----------------------------------------------------------
1088 eingetragene Mitglieder in dieser Liste.
Reply to: