передайте необработанное электронное письмо по каналу к сценарию Python

Перемещение учетных записей пользователей и данных будет зависеть от Вашей базы данных аутентификации и формата данных. Я предположу, что Вы используете фактический *, отклоняют счета sendmail (в противоположность хранению учетных записей/почтовых ящиков в базе данных), поскольку это - значение по умолчанию.

Вы должны только создать новые учетные записи с теми же именами пользователей в новой системе для создания почтовых ящиков. Не забывайте копировать по/etc/aliases также. Необходимо определить, какой формат новая система сохранит электронную почту в (т.е. MH, mbox, Maildirs, и т.д.) и преобразует хранившие сообщения от старой системы до нового формата (предполагающий, что формат изменился). Существуют многочисленные сценарии, доступные онлайн для обработки этих вещей. Удостоверьтесь при копировании сообщений в новую систему, что Вы проверяете пользователя и владение группы и полномочия файла. UIDs Вашего пользователя в новой системе не мог бы совпасть с в старой системе.

0
задан 10 December 2013 в 14:22
2 ответа

Exim может передать сообщение другому процессу, и из этого процесса сообщение доступно через файл / dev / stdin . Например, из оболочки мы можем читать сообщение построчно, вот так:

#!/bin/sh

while read line
do 
  echo (( $line ))
done < /dev/stdin
#####
1
ответ дан 4 December 2019 в 17:53

Ладно, дурак, мне следовало более внимательно прочитать документацию:

Обычное сообщение отправляется в сценарий через стандартный ввод, мне не нужно передавать его через командную строку параметры.

в Python это будет похоже на

import sys

for line in sys.stdin:
    the_file.write(line)
0
ответ дан 4 December 2019 в 17:53

Теги

Похожие вопросы