では、シェルスクリプトを作成してみましょう。今回のシェルスクリプト(dm_sender_strattls.sh)は、次のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#!/bin/sh smtp_server="smtp.gmail.com" user_id="Googleアカウントのユーザー名" user_adress="${user_id}@gnail.com" password="Googleアカウントのパスワード" encoding_id_password=$(printf "${user_id}\0${user_id}\0${password}" | base64) message_file="message1.txt" message=$(sed 's/$/\\n/g' ${message_file} | tr -d "\n") dist_address="送信先のメールアドレス" expect -c " set timeout 5 spawn openssl s_client -connect ${smtp_server}:587 -starttls smtp -crlf expect \"250 SMTPUTF8\" send \"auth plain ${encoding_id_password}\n\" expect \"235 2.7.0 Accepted\" send \"mail from:<${user_adress}>\n\" expect \"250 2.1.0 OK*\" send \"rcpt to:<${dist_address}>\n\" expect \"250 2.1.5 OK*\" send \"data\n\" expect \"354 Go ahead*\" send \"To:${user_address}\n\" send \"From:${dist_address}\n\" send \"${message}\" send \".\n\" expect \"250 2.0.0 OK*\" send \"quit\n\" exit 0 " > send.log |