]>
git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - scripts/splitmbox.pl
2 # perl version of splitmbox.py
3 # SPDX-License-Identifier: GPL-2.0
4 # Copyright (c) 2022 Greg Kroah-Hartman <gregkh@linuxfoundation.org>
6 # I didn't want to deal with the python2->3 transition so I rewrote it in perl...
8 use Mail
::Mbox
::MessageParser
;
10 my ($mbox_file, $directory) = @ARGV;
12 if ((not defined $mbox_file) or (not defined $directory)) {
13 print "splitmbox.pl mbox directory\n";
17 if (not -d
$directory) {
18 print "directory $directory does not exist!\n";
22 my $mbox_reader = new Mail
::Mbox
::MessageParser
( {
23 'file_name' => $mbox_file,
27 die $mbox_reader unless ref $mbox_reader;
29 # compute number of messages in mailbox
31 while (!$mbox_reader->end_of_file()) {
32 my $email = $mbox_reader->read_next_email();
35 my $width_string = sprintf("%d", $count);
36 my $width = length $width_string;
37 print "mailbox count = $count\n";
38 print "string width = $width\n";
40 $mbox_reader->reset();
43 while (!$mbox_reader->end_of_file()) {
44 my $filename = sprintf("%s/msg.%0*d", $directory, $width, $count);
45 my $email = $mbox_reader->read_next_email();
47 print "filename = $filename\n";
48 open(FILE
, '>', $filename) or die $!;