Утилита командной строки для резервного копирования файлов с использованием почтовых серверов.
Для работы программы требуется Microsoft .NET 2.0.
Features
- Копирование файлов в каталоге на один или несколько почтовых серверов.
- Сжатие файлов перед копированием для уменьшения трафика.
- Разрезание файлов на части, допускаемые по размеру почтовым сервером.
- Экранирование «неправильных» расширений имён файлов перед отправкой.
- Возможность фильтрации файлов по расширениям (списки включаемых и исключаемых расширений).
- Возможность обработки файлов в подкаталогах.
Алгоритм
Формируются одно или несколько почтовых сообщений, к которым присоединяются файлы, удовлетворяющие значениям параметров процесса. Перечень присоединённых файлов вносится в текст сообщения, сообщение имеет тему, заданную параметром TitleFrom и именем каталога.
Ход формирования и отправки почтового сообщения отображается на консоли, сообщения об ошибках записываются в текстовый файл eMailBackup.errors.
Параметры конфигурации
Параметры находятся в файле eMailBackup.exe.config (текстовый в кодировке UTF-8).
- SmtpHost – адрес SMTP сервера для отправки почты (напр., smtp.gmail.com)
- SmtpUser – имя пользователя почтового ящика
- SmtpPwd – пароль пользователя
- SmtpPort – порт SMTP сервера.
- SmtpTimeout – время ожидания ответа сервера (в минутах).
- SmtpEnableSSL – SMTP сервер использует SSL (True|False).
- SmtpHostAuthorize – SMTP сервер требует авторизации (True|False).
- AddrFrom – адрес, от имени которого будет отправлена почта.
- TitleFrom – видимое имя отправителя и тема писем
- AddrTo – адрес(а), на который(е) будут отправляться письма. Список адресов, разделённых символом «;»
- FilesMaskInclude – списки масок типов файлов, включаемых в процесс копирования
Каждая строка содержит перечень масок, разделённых запятой. В параметре может быть задано любое количество строк. - FilesMaskExclude – списки масок типов файлов, исключаемых из процесса копирования
- ScanSubDirectories – обрабатывать подкаталоги (True|False).
- InvalidExtention – перечень расширений имён файлов, не допустимых к пересылке. Перечень расширений, разделённых запятой.
- ValidExtension – расширение, с помощью которого будут маскироваться файлы с недопустимыми расширениями.
- GzipFiles – сжимать файлы перед отправкой (True|False).
- MaxAttachmentsSize – максимальный размер файлов (в Мб), приложенных к одному письму. Файлы с размерами, превышающими этот параметр, будут разрезаны на части.
- MaxAttachmentsCount – максимальное количество файлов, присоединяемое к одному письму.
- ArcFiles – перечень расширений имён файлов, являющихся архивами. При работе с GzipFiles==True такие файлы не будут сжиматься.
- CmdEncoding – кодировка командного файла для сборки частей разрезанного файла. При пустом значении используется системная OEM–кодировка.
Параметры командной строки
- -to, -o <user@domain> – адрес, на который будут отправляться письма. Парамет может повторяться нужное количество раз. Значения адресов объединяются с заданными в параметре конфигурации AddrTo. При отсутствии информации будет использовано значение AddrFrom.
- -m <mask list> – то же, что и параметр FilesMaskInclude. Значения параметров объединяются.
- -x <mask list> – то же, что и параметр FilesMaskExclude. Значения параметров объединяются.
- -zip – сжимать файлы независимо от значения параметра конфигурации GzipFiles.
- -nozip – не сжимать файлы независимо от значения параметра конфигурации GzipFiles.
- -unzip file1[,fileN] – разархивировать ранее сжатые файлы. Все указанные в командной строке файлы должны иметь расширение .nzip. Режим вспомогательный - никакие другие параметры не обрабатываются и резервное копирование не производится.
- -split file piece – разрезать файл на части заданного размера (в байтах). Режим вспомогательный.