编辑:
尝试简单
curl -SIo /dev/stdout example.com 2>/dev/null | mail -s "Test" an@email.com
好吧,如果是邮件问题。您的描述似乎很奇怪,您使用的是哪个版本的邮件?
或者sendmail
直接要求:
/usr/sbin/sendmail an@email.com < <(
echo $'From: an@email.com\nTo: an@email.com\nDate: '$(
env LANG=C date +%c)$'\nSubject: Test'
echo
curl -SIo /dev/stdout 2>/dev/null example.com)
你甚至可以构建一些更复杂的工作:
MyVar="$(curl -SIo /dev/stdout 2>/dev/null example.com)"
/usr/sbin/sendmail an@email.com < <(
echo $'From: an@email.com\nTo: an@email.com\nDate: '$(
env LANG=C date +%c)$'\nSubject: Server resp: '${MyVar%%$'\r'*}
echo
echo "$MyVar")
因此,您可以在主题中获得初始服务器响应。
这不是保留 sendmail
功能!
多年来我一直在使用这种方法,首先是在 下sendmail
,但是这与我曾经使用过的所有MTA使用相同的语法(即直接调用../sbin/sendmail
二进制文件或包装器,使用格式化的邮件作为标题 + 空行 + 正文)现在(sendmail、qmail、postfix、exim)。
注意一些(旧)MTA 抱怨CR的存在(或不存在)或\r
在行尾,也许有些sed 's/$/\r/'
可以提供帮助。