log.pl
changeset 3 a69ac45de2f0
parent 2 b1954e2f261c
child 4 29674fb1ef8a
equal deleted inserted replaced
2:b1954e2f261c 3:a69ac45de2f0
     4 my $USAGE = <<'#';
     4 my $USAGE = <<'#';
     5 $ME [options]
     5 $ME [options]
     6     --[no]db	insert into log database [$opt_db]
     6     --[no]db	insert into log database [$opt_db]
     7     --[no]mail	send mails to @config::mailto [$opt_mail]
     7     --[no]mail	send mails to @config::mailto [$opt_mail]
     8     --message=s message
     8     --message=s message
     9                 if the message looks like a file name (e.g.:
     9                 - if the message looks like a file name (e.g.:
    10 		./text or /tmp/text, the message is read
    10 		  ./text or /tmp/text, the message is read
    11 		from this file)
    11 		  from this file)
    12              
    12 		- if message is 'upgrade:<FILE>' or
       
    13 		  'dist-upgrade:<FILE>', the file is parsed as apt
       
    14 		  output
    13 #
    15 #
    14 
    16 
    15 use strict;
    17 use strict;
    16 use warnings;
    18 use warnings;
    17 use File::Basename;
    19 use File::Basename;
    76     } elsif ($opt_message eq "-") {
    78     } elsif ($opt_message eq "-") {
    77 	$opt_message = join "", <STDIN>;
    79 	$opt_message = join "", <STDIN>;
    78     } elsif ($opt_message =~ /^((?:dist-)?upgrade):(.*)/) {
    80     } elsif ($opt_message =~ /^((?:dist-)?upgrade):(.*)/) {
    79 	open(I, $2) or die "Can't open $2: $!\n";
    81 	open(I, $2) or die "Can't open $2: $!\n";
    80 	$opt_message = "$1\n"
    82 	$opt_message = "$1\n"
    81 	    . join "", grep /^(?:Inst|Conf|Remv)/, <I>;
    83 	    . join "", grep /^(?:\d|Inst|Conf|Remv)/, <I>;
    82 
    84 
    83 	die $opt_message;
    85 	die $opt_message;
    84     }
    86     }
    85 
    87 
    86     if ($opt_message =~ /\n/) {
    88     if ($opt_message =~ /\n/) {