gpt4 book ai didi

powershell - Powershell脚本无法发送电子邮件警报

转载 作者:行者123 更新时间:2023-12-03 01:07:28 25 4
gpt4 key购买 nike

当我的加载过程失败时,我没有收到电子邮件警报,以下是我的脚本。请让我知道我在哪里做错了,并提出一种使该条件起作用的方法

$body = Get-Content -Path D:\APPDATA\FDMEE\Scripts\output.txt | Out-String 
$fail = Get-Content "D:\APPDATA\FDMEE\Scripts\output.txt" | Select-String "FAILED"
if($fail-eq "$True"){Send-MailMessage -From "sharihar@xpioc.com" -To ""sharihar@xpioc.com""-Subject " Load failed on the Production Server." -Body "$body" -Attachments "D:\APPDATA\FDMEE\Scripts\output.txt" -smtpServer mail.xpioc.com}

Output.txt内容
process_id       : 50836
STATUS : FAILED
RULE_ID : 16
RULE_NAME : INTERNATIONAL

最佳答案

更改此:

$fail = Get-Content "D:\APPDATA\FDMEE\Scripts\output.txt" | Select-String "FAILED" 
if($fail-eq "$True")

对此:
$fail = Get-Content "D:\APPDATA\FDMEE\Scripts\output.txt" | Select-String "FAILED" -Quiet
if($fail)

您的代码正在测试 $fail变量是否包含不匹配的字符串“True”。

根据LotPings的注释,如果将 -Quiet开关添加到 Select-String,则会得到一个正确/错误的结果。然后,您可以仅测试 $fail以确认对/错结果是否为真。

关于powershell - Powershell脚本无法发送电子邮件警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45565217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com