#!/usr/bin/perl -w ## ## $HOME/bin/box2mutt ## Sebastian Helms ## Last changed: 07.01.2001 01:12 ## ## erstellt aus meiner /home/sh/.procmail/sort-rc automatisch ## Einträge für die .muttrc # Dateien öffnen open(IN, "/home/sh/.mutt/mailboxlist") or die "Cannot open mailboxlist"; open(ARC, ">/home/sh/.mutt/archivelist") or die "Cannot open archivelist"; open(SUB, ">/home/sh/.mutt/subscribes") or die "Cannot open subscribes"; # Datumsstring erzeugen my ($sec, $min, $std, $mtag, $mon, $jahr, $wtag, $jtag, $isdst); my $date; ($sec, $min, $std, $mtag, $mon, $jahr, $wtag, $jtag, $isdst) = localtime time; $jahr+=1900; $mon++; $date = sprintf "%2d.%2d.%4d %2d:%2d", $mtag, $mon, $jahr, $std, $min; if ($mon < 10) { substr ($date, 3, 1) = "0"; } if ($mtag < 10) { substr ($date, 0, 1) = "0"; } if ($min < 10) { substr ($date, 14, 1) = "0"; } if ($std < 10) { substr ($date, 11, 1) = "0"; } # Dateiheader schreiben print BOX <<"EOT"; ## ## \$HOME/.mutt/mailboxlist ## automatically generated by box2mutt: $date ## EOT print BOX "mailboxes !\n"; print SUB <<"EOT"; ## ## \$HOME/.mutt/subscribes ## automatically generated by box2mutt: $date ## EOT print ARC <<"EOT"; ## ## \$HOME/.mutt/archivelist ## automatically generated by box2mutt: $date ## EOT print ARC "mbox-hook ! 'inbox' +archiv/archiv/`date +%Y-%m`\n"; while () { # Delivery-Recipe gefunden ? if (/^in-/) { # Ordner extrahieren chomp ($inbox = $_); next if $inbox =~ /spam/; # mailboxes-Entrag schreiben print BOX "mailboxes +$inbox\n"; # Kategorie extrahieren chomp ($box = ); $box =~ s/# category: (.*)/$1/; $inbox =~ s/in-(.*)/$1/; # mbox-hook schreiben print ARC "mbox-hook ! 'in-$inbox' +$box/$inbox/`date +%Y-%m`\n"; # Listenarchiv-Folder anlegen mkdir "/home/sh/Mail/$box/$inbox", 0755; # nach subscribe-Eintrag suchen chomp ($box = ); if ($box =~ /subscribe/) { # subscribe-Eintrag extrahieren $box =~ s/# subscribe: (.*)/$1/; push @lists, $box; } } } # subscribe-Einträge schreiben print SUB "subscribe @lists"; # Dateien schließen close IN; close BOX; close ARC; close SUB;