Отправляем письмо через удаленный smtp ( например smtp.yandex.ru ) на perl

Posted in Новости on 25 января, 2013 by admin


#!/usr/bin/perl

use strict;
use warnings;

use Mail::Sender;

my $sender = new Mail::Sender {
headers => 'Content-Type: text/plain; charset=utf-8',
smtp => 'smtp.yandex.ru',
from => 'email@email.ru',
to => "email2@email.ru",
subject => 'Hello, i am subject',
# debug => 'debug.log',
msg => "Hello, i am message",
auth => 'PLAIN',
authid => 'email@email.ru',
authpwd => 'password_from_email_email_ru',
};
my $result = $sender->MailMsg({
msg => $sender->{msg},
});
}

subject и msg понимают кириллицу и перенос строк на 100%

Tags: , ,

цикл foreach для хеш массива в perl

Posted in Новости on 25 января, 2013 by admin


foreach $key (keys %hash) {
print "Key - $key\n";
print "Hash for key $key - $hash{$key}\n";
}

Tags: , ,

Объединяем два массива в один хеш массив в perl

Posted in Новости on 25 января, 2013 by admin


my @EMAILS = ('1','2');
my @TOKENS = ('a','b');
my %hash;
@hash{@EMAILS} = @TOKENS;

Tags: , ,

Проверка массива на пустоту в perl

Posted in Новости on 31 декабря, 2012 by admin


if ( @ARR == 0 ) { next; }

Tags:

Убираем BOM заголовки из переменных в perl

Posted in Новости on 12 декабря, 2012 by admin

Допустим, у нас есть скрипт, запускающийся вот так :

./1.pl user password

Для удобства сохраняем доступы в Windows в txt файле, из которого их будем копипастить при запуске скрипта.

В этом случае при использовании работы по ssh в auth логе будет ошибка вида :

server sshd[23315]: Failed password for invalid user \357\273\277user from x.x.x.x port 42509 ssh2
server sshd[23319]: Did not receive identification string from x.x.x.x

то есть вместе с логином в переменную вливается BOM последовательность. Лечится ее выпиливанием через регулярные выражения


my $LOGIN = $ARGV[0];
$LOGIN =~ s/^\xEF\xBB\xBF//;

Tags: ,