我有一个powershell脚本,它使用Write-Output
来显示每个循环的结果。
我需要通过电子邮件发送输出,之前使用sendemail.exe
执行此操作,如下所示
cscript //nologo script.vbs 2>&1 | sendEmail.exe -t mail@blah.co.uk -u "subject blah" -f mail@blah.co.uk -s smtpserver1.mail.co.uk
我无法使用powershell,因为当我运行.ps1脚本时,它会将输出写入当前控制台,而不会将其传递给sendemail.exe应用程序。我是否需要不同的cmdlet,或者将电子邮件功能编写到脚本中是否更简单?
答案 0 :(得分:5)
不要在PowerShell上使用sendmail.exe。在PowerShell 2.0及更高版本中,在脚本本身中使用Send-MailMessage。将“输出”捕获到变量以使用-Body
参数传递。
答案 1 :(得分:3)
如果您使用的是powershell v2或v3,为什么不使用此本机cmdlet?