очень хорошее решение, которое я нашел в целом хорошим, если без аутентификации и никакие программы не могут / должны быть установлены или могут существовать - это следующее, которое должно работать наUbuntu и другие платформы Linux (вы можете поместить все в одну строку, используя разделитель команд ;
и удалив символы \
в строке echo
в кавычках):
set sender="<sender@example.com>"
set recipient="<recipient@example.com>"
set subj="testsubj"
set body="testbody"
set srv="mysmtpsrv.com"
set port="25"
set crlf="\x0D\x0A"
echo "EHLO man${crlf}\
MAIL FROM: ${sender}${crlf}\
RCPT TO: ${recipient}${crlf}\
data${crlf}\
Subject: ${subj}${crlf}${crlf}\
${body}\
${crlf}.${crlf}"\
|\
nc -Ci 1 ${srv} ${port}
(используя вот такубедитесь, что вы сохраняете файл в стиле Unix (после обратной косой черты echo "...\
будет добавлен только символ \x0A
. В противном случае просто удалите обратную косую черту и символ новой строки, который помещает все в строку и заставляет его работать, но менее визуально).структурированный.)