#!/arch/unix/bin/perl # # usage: how-many-unread /path/to/mbox # # Displays how many messages are unread in the given mailbox # use warnings; use strict; use Mail::Box::Mbox; use Mail::Box::Parser::C; die "usage: $0 mbox\n" unless @ARGV == 1; my $mailbox = $ARGV[0]; my $unread = 0; my $folder = Mail::Box::Mbox->new( folder => $mailbox, access => 'ro' ) or die "Couldn't open $mailbox"; foreach my $msg ( $folder->messages ) { my $status = $msg->head->get('Status'); $unread++ if not defined $status or $status !~ /RO/; } $folder->close; print "$unread\n";