2015-10-21 25 views
-4

我有一個批處理腳本&一個PowerShell腳本,它按照計劃向我發送電子郵件。腳本來檢查文件是否可用,如果是的話發送電子郵件或什麼也不做

批處理腳本如下: - 它那張在SFTP位置登錄的與所需的憑據去的具體路徑&給我的SFTP文件夾中的文件輸出到本地機器上的一個文本文件。這工作正常。

PowerShell腳本: - 此腳本讀取outfile文件&發送電子郵件正文中的最後一行。

我的問題是: - 當內容中缺少輸出時,powershell腳本仍然運行&向我發送空白電子郵件。

我正在尋找一個腳本,它會讀取輸出文件&發送電子郵件&如果輸出文件是空的,它什麼都不會做。

+0

我不希望任何輸出文件開始,如果沒有新的東西來處理。如果輸出文件永遠不會被刪除,並且只有附加信息,那麼應該總是有最後一行。 – notjustme

回答

1

在讀取輸出文件之前,您可以簡單地檢查其長度,例如。

if(!(get-item output.txt).length){exit} 
+0

這是PowerShell腳本 $ FROMADDRESS = 「[email protected]」 $的toAddress = 「[email protected]」 $ bccaddress = 「」 $ CCaddress = 「」 $主題=「文件名文件$ ((get-date).adddays(0).toshortdatestring())「 $ Body = Get-Content C:\ Users \ XXX \ Desktop \ xxx \ Filename.TXT | Select-Object -last 1 $ smtpserver =「xxx.xxx.com」 – user3413774

+0

$ message = new-object System.Net.Mail.MailMessage $ message.From = $ fromaddress $ message.To.Add($ toaddress) $ message.CC.Add($ CCaddress) $ message.Bcc.Add($ bccaddress) $ message.IsBodyHtml = $假 $ message.Subject = $主題 $ message.body = $身體 $ SMTP =新對象Net.Mail.SmtpClient($ smtpserver) $ smtp.Send($ message) – user3413774

相關問題