Jawaban:
formail , bagian dari procmail (dan mungkin sudah tersedia di sistem Anda) dapat mengambil kotak surat, membaginya menjadi pesan, dan kemudian menjalankan perintah pada masing-masing. Dari halaman manual:
-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.
Jadi Anda dapat melakukan apa yang saya pikir Anda inginkan seperti ini:
formail -s /usr/sbin/sendmail -oi -t < /var/mail/root
ls /var/mail
; lakukan formail -s / usr / sbin / sendmail -oi $ foo <./$foo; selesai" harus mengulang setiap file dan mengirimkan secara lokal ..
mutt -f /var/mail/www-data
Kemudian dalam mutt ...
T.*
;b
T memasukkannya ke mode penandaan, dan. * Menandai semua pesan. Tanda titik koma menerapkan perintah berikutnya untuk semua pesan yang ditandai, dan akhirnya b "memantulkan" pesan ke alamat yang diminta.
Dari ingatan, saya pikir juga
D.*
atau
T.*
;d
Kemudian akan mengosongkan kotak surat.
File kotak surat / var / spool / mail / xxx unix adalah file teks sederhana tempat pesan email disimpan secara berurutan. Setiap pesan email dimulai dengan baris "Dari" (yang bukan bagian dari pesan) dengan pengirim dan tanggal penerimaan, lalu Anda mendapatkan header surat, kemudian badan surat.
Pada dasarnya Anda hanya dapat mengulang pada file yang mendeteksi Dari baris tersebut dan mengekstrak setiap pesan kemudian mengirimnya menggunakan alat-alat seperti modul python smtp atau perl Net :: modul SMTP dari cpan.
Jika target adalah kotak surat lokal lain, Anda bisa menambahkan pesan (termasuk baris Dari) ke sana. Anda bahkan bisa menambahkan seluruh kotak surat root ke kotak surat lain jika Anda tidak peduli juga mendapatkan pesan yang benar-benar ditargetkan untuk di-root.
Saya harus memiliki beberapa skrip yang melakukan itu dan akan memposting contoh jika Anda mau.
Masalahnya mungkin untuk mendapatkan target pesan yang sebenarnya karena jika mereka berakhir di root mailbox mereka mungkin ditargetkan untuk melakukan root sejak awal?