Odpowiedzi:
formail , część procmaila (i prawdopodobnie już dostępna w twoim systemie) może wziąć skrzynkę pocztową, podzielić ją na wiadomości, a następnie uruchomić polecenie na każdym z nich. Ze strony podręcznika:
-s The input will be split up into separate mail messages, and piped
into a program one by one (a new program is started for every
part). -s has to be the last option specified, the first argument
following it is expected to be the name of a program, any other
arguments will be passed along to it. If you omit the program,
then formail will simply concatenate the split mails on stdout
again. See FILENO.
Możesz więc zrobić to, co według mnie chcesz:
formail -s /usr/sbin/sendmail -oi -t < /var/mail/root
ls /var/mail
; formail -s / usr / sbin / sendmail -oi $ foo <./$foo; done” powinno zapętlić każdy plik i dostarczyć lokalnie ..
mutt -f /var/mail/www-data
Następnie w mutt ...
T.*
;b
T przełącza go w tryb tagowania, a. * Oznacza wszystkie wiadomości. Średnik stosuje następne polecenie do wszystkich oznaczonych wiadomości, a na koniec b „odbija” wiadomości pod adres, o który poprosi.
Z pamięci też tak myślę
D.*
lub
T.*
;d
Następnie opróżni skrzynkę pocztową.
Pliki skrzynki pocztowej / var / spool / mail / xxx unix są prostymi plikami tekstowymi, w których wiadomości są przechowywane w sekwencji. Każda wiadomość zaczyna się od wiersza „Od” (taht nie jest częścią wiadomości) z nadawcą i datą odbioru, następnie otrzymujesz nagłówki, a następnie treść wiadomości.
Zasadniczo możesz po prostu zapętlić plik, wykrywając takie linie From i wyodrębnić wszystkie wiadomości, a następnie wysłać je za pomocą narzędzi takich jak moduł python smtp lub moduł perl Net :: SMTP z cpan.
Jeśli celem jest inna lokalna skrzynka pocztowa, możesz po prostu dołączyć do niej wiadomości (w tym linię From). Możesz nawet dołączyć całą główną skrzynkę pocztową do innej skrzynki pocztowej, jeśli nie przejmujesz się także otrzymywaniem wiadomości naprawdę ukierunkowanych na root.
Powinienem mieć kilka skryptów, które to robią i opublikuję przykłady, jeśli chcesz.
Problemem może być uzyskanie prawdziwego celu wiadomości, ponieważ jeśli zakończyły się one w głównej skrzynce pocztowej, prawdopodobnie były od samego początku celem rootowania?