URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9643
[ Назад ]

Исходное сообщение
"Готовый скрипт"

Отправлено Purpur , 25-Фев-13 08:44 
Приветствую всех. Интересует стоимость написания готового консольного скрипта по следующему заданию.
Имеется текстовый файл с 3 столбцами и сотней строк. Формат такой :

email_пользователя логин_пользователя пароль_пользователя

Скрипт должен в соответствии со строками отправить на 'email_пользователя' шаблонный текст, содержащий в себе соответствующую пару значений 'логин_пользователя' и 'пароль_пользователя'.
Например, в файле есть строки :

1 vpupkin@domain.com vpupkin pass1234
2 iivanov@domain.com ivanovivan qwerty321

Письмо, отправляемое скриптом на адрес vpupkin@domain.com, должно быть примерно следующего вида : "Добрый день! Ваш логин в системе - vpupkin. Ваш пароль - pass1234".  Письмо, отправляемое скриптом на адрес iivanov@domain.com, должно быть примерно следующего вида : "Добрый день! Ваш логин в системе - ivanovivan. Ваш пароль - qwerty321". В идеальном варианте письмо должно идти с вложением документа формата .doc или .pdf

Также крайне желательно, чтобы скрипт содержал в себе подробные комментарии по выполняемым действиям, ибо очень хочется разобраться в предмете вопроса, но опыта в программировании нет совсем никакого.

С уважением ко всем прочитавшим.


Содержание

Сообщения в этом обсуждении
"Готовый скрипт"
Отправлено Pahanivo , 25-Фев-13 10:31 
http://lmgtfy.com/?q=perl+mail+send

"Готовый скрипт"
Отправлено Purpur , 25-Фев-13 12:03 
> http://lmgtfy.com/?q=perl+mail+send

Мне несложно поискать в Гугле. Мне сложно перевести результаты поисков в готовое решение. Настолько сложно в данный момент, что я спросил о СТОИМОСТИ такого решения.


"Готовый скрипт"
Отправлено михалыч , 25-Фев-13 18:00 
Тут архисложного ничего нет.
Давай попробуем, сварим кашу, перловую. ))

Вот примерный файл mailer.pl

#!/usr/bin/perl

# ваш e-mail для ответа?
$mymail = '';

# путь к файлу со списком
$list = '/path/to/list';

open ( MLS, "$list" ) || die "$list not found\n";
@mailist = <MLS>;
close ( MLS );

foreach $email (@mailist) {
    $email =~ s/(\r|\n|\t)//g;
    ($address,$login,$password) = split(/ /,$email);
    open ( MAIL, "|sendmail -t" );
    select ( MAIL );
    $address =~ s/\s//g;
    print "To: $address\n";
    print "From: $mymail\n";
    print "Subject: This email was sent by the bot, please do not reply\n";
    print "Good day! Your login in the system - $login. Your password - $password.\n";
    close ( MAIL );
    select ( STDOUT );
    print "Sent to $login at $address\n";
}

print "Done!\n";


содержание файла list (через пробел)
mail_1@mail.com login_1 password_1
mail_2@mail.com login_2 password_2


"Готовый скрипт"
Отправлено Purpur , 25-Фев-13 22:02 
>[оверквотинг удален]
>     print "Good day! Your login in the system
> - $login. Your password - $password.\n";
>     close ( MAIL );
>     select ( STDOUT );
>     print "Sent to $login at $address\n";
> }
> print "Done!\n";
> содержание файла list (через пробел)
> mail_1@mail.com login_1 password_1
> mail_2@mail.com login_2 password_2

Спасибо большое! Я вот ещё не дорос до решения таких задачек, знаний катастрофически не хватает. Завтра попробую. Не совсем пока понятен синтаксис перла, буду разбираться. Спасибо за Ваш труд!



"Готовый скрипт"
Отправлено Purpur , 26-Фев-13 12:04 
В общем, спасибо огромное ещё раз. Скрипт отлично отрабатывает, в написании его я  разобрался, что помогло его немного модифицировать в плане присоединения вложений. Остались пока непонятки с русскими именами вложений, но буду разбираться сам. А заодно займусь обстоятельным изучением perl'а.