【发布时间】:2020-02-26 11:17:55
【问题描述】:
我有一个文本文件,其中包含日志文件的最后更新。
Volume in drive E is ISCSI
Volume Serial Number is XXXXXX
Directory of E:\Apps\LOGS
02/26/2020 11:39 AM 762,661-vx_02262020.log
1 File(s) 762,661 bytes
0 Dir(s) 12,554,166,272 bytes free
我正在使用下面的 powershell 脚本来阅读内容并通过电子邮件发送相同的内容:
$Date = (Get-Date -format "MMddyyyy")
$body = Get-Content -path C:\Desktop\Logs\LOG_TIME_$Date.txt -raw
Send-MailMessage -To "abc@gmail.com2" -From "abc@gmail.com" -Subject "LOG TIME $Date" -Body "$body" -SmtpServer "xxxxx.main.glb.corp.local"
代码运行良好,并将正文中文件的所有内容发送到我的电子邮件。但我只希望在电子邮件中发送日期和时间(会不断变化)。
我尝试了很多选项,但似乎没有一个可行:
- 二手 |选择字符串“05/”
- 使用 Where-Object
- 使用 -Pattern '$Date' -AllMatches |
有人可以帮我从文本文件中仅填充电子邮件正文中的日期和时间吗?
【问题讨论】:
-
你能详细说明一下吗?电子邮件的所需正文是什么?仅从日志文件中读取日期和时间,或者?附:您不应该在代码中使用大引号
“和”。这在 word 文档中可能看起来不错,但会在代码中产生奇怪的错误。将它们替换为直引号" -
感谢 Theo 的 cmets。已完成更改并详细说明了声明。是的 - 我只需要文本文件中的日期和时间出现在电子邮件正文中。日期和时间会不断变化。