Powershell邮件脚本

时间:2018-05-31 08:26:28

标签: powershell jenkins jenkins-cli

我正在尝试创建一个powershell邮件程序脚本,它将从Jenkins接收参数(mail_ids)作为参数。第一个参数是要跳过的。从第二个参数都是maild_ids,那些将获得邮件。 如果我使用硬编码方式,邮件通知会成功,但如果我尝试将其作为参数传递,则会失败。脚本写在下面,也提到了错误。

下面有什么问题:

foreach ([string[]] $arg1 in `$args| select -skip 1`)
{
   Send-MailMessage -To $arg1 "XYZ Build" -Body "$Mail_body" -smtpserver XYZ-ABCDE.XYZ.XYZ
}

错误:

Missing variable name after foreach. At C:\Deploy\SmartCM\sendmail_scm.ps1:16 char:10
+ foreach ( <<<< [string[]] $arg1 in `$args| select -skip 1`)
    + CategoryInfo          : ParserError: (VariableToken:TokenId) [], ParseException
    + FullyQualifiedErrorId : MissingVariableNameAfterForeach

1 个答案:

答案 0 :(得分:0)

我能够使用以下脚本解决我的目的:

    foreach ($arg in $args[1..($args.length -1)])
{
    [string[]]$toAddress=$arg
    Write-Host "${toAddress}"
    Send-MailMessage -To $toAddress -From jenkins@XYZ.com -Subject "XYZ Build" -Body "$Mail_body" -smtpserver XYZ-smtpint.XYZ.ABCD
}

感谢大家的支持!!