首页 文章

通过Cygwin发送电子邮件

提问于
浏览
2

我有一个shell脚本,我想通过它发送一封电子邮件 . 我正在通过cygwin在Windows上执行此脚本 . 我在我的机器上安装了 email 包 . 但是,我很难让它工作 . 请告诉我通过cygwin命令提示符发送电子邮件的最简单方法是什么 .

我的ssmtp.conf文件是:

mailhub=smtp.gmail.com:587
FromLineOverride=YES
rewriteDomain=gmail.com
root=aci.lfindba@gmail.com
UseTLS=YES
AuthUser=userid
AuthPass=password

和email.conf文件有:

SMTP_SERVER = 'smtp.gmail.com'
SMTP_PORT = '25'
MY_NAME  = 'ABC'
MY_EMAIL = 'emailaddress'
REPLY_TO = 'emailaddress'
USE_TLS = 'true'
ADDRESS_BOOK = '&/email.address.template'
SMTP_AUTH = 'LOGIN'
SMTP_AUTH_USER = 'userid'
SMTP_AUTH_PASS = 'password'

我使用下面的命令发送电子邮件:echo "mail body" | email -s "subject" recipient@gmail.com但是,我收到以下错误: email: FATAL: Could not connect to server: smtp.gmail.com on port: 25: Operation not permitted

请帮忙 .

2 回答

  • 0

    安装并配置 ssmtp 包 .

    使用以下内容创建 /bin/mail

    #!/bin/sh
    #
    # copyright 2016 Gene Pavlovsky [http://www.razorscript.com]
    #
    # mail: mail-like wrapper script for sendmail
    
    SENDMAIL=/usr/sbin/ssmtp
    
    usage()
    {
      {
        echo "Usage: $(basename $0) [-s "subject"] [-f from-addr] [to-addr]..."
        echo
        echo "Sends mail."
        echo
        echo "Options:"
        echo -e "  -s\tsubject (quote subjects containing spaces)"
        echo -e "  -f\tfrom address"
      } >&2
      exit 2
    }
    
    while test $# -gt 0; do
      case $1 in
        -s)
                shift
                test $# -eq 0 && usage
                subj=$1
        ;;
        -f)
                shift
                test $# -eq 0 && usage
                from=$1
        ;;
        -*)
          usage
        ;;
        *)
                rcpt+=( "$1" )
        ;;
      esac
    
      shift
      test "$end_options" = yes && break
    done
    
    test ${#rcpt} -eq 0 && usage
    
    {
        test "$from" && echo From: $from
        test "$subj" && echo Subject: $subj
        echo
        exec /bin/cat
    } | "$SENDMAIL" "${rcpt[@]}"
    

    别忘了 chmod 755 /bin/mail .

  • 1

    我使用msmtp包,使用此配置

    port 587
    auth on
    from svnpenn@gmail.com
    host smtp.gmail.com
    tls on
    tls_certcheck off
    user svnpenn@gmail.com
    

    ref

相关问题