我試圖找出一個電子郵件地址是否有效。bash和telnet來測試一個電子郵件
我已經usign的telnet實現這一點,見下文
$ telnet mail.example.com 25
Trying 0.0.0.0...
Connected to mail.example.com.
Escape character is '^]'.
220 mail.example.com Mon, 14 Jan 2013 19:01:44 +0000
helo email.com
250 mail.example.com Hello email.com [0.0.0.0]
mail from:[email protected]
250 OK
rcpt to:[email protected]
550 Unknown user
這個550請求我知道的地址不是在郵件服務器上有效的...如果它是有效的,我會得到迴應如下所示:
250 2.1.5 OK
我該如何在shell腳本中自動執行此操作?到目前爲止我有以下
#!/bin/bash
host=`dig mx +short $1 | cut -d ' ' -f2 | head -1`
telnet $host 25
謝謝!
值得注意的是,大多數大型郵件提供商,包括GMail,Hotmail和Yahoo Mail都不允許使用這種技術來阻止垃圾郵件發送者收集真實賬戶。 –
@那個其他人 我實際上已經嘗試過使用gmail,它*做*工作,只是以不同的格式...... 'code'郵件來自:<[email protected]> rcpt to: [email protected]>'code' – bsmoo