将Powershell脚本作为服务运行,通过电子邮件查看日志文件和报告

时间:2013-06-26 18:21:04

标签: regex powershell service grep

我有一些我正在观看的日志文件,我需要使用PowerShell,因为它是一个Windows服务器。我用来执行此操作的命令是:

Get-Content System.log -wait | {$_-match "some regex"}

我正在尝试在脚本中运行它,如果它发现我指定的正则表达式后面的日志文件有任何更改,请让它给我发电子邮件。使用bash和cron很容易做到这一点。我不确定PowerShell中的等价物是什么。以及我需要查找什么返回代码才能知道它是否找到了什么?

1 个答案:

答案 0 :(得分:1)

你试过吗

Get-Content System.log -wait | {$_-match "some regex"} | foreach { send-email -message $_ }

我不知道在get-content -wait退出之前是否会通过管道输出结果,但是给它一个去吧。

至于将其作为服务运行,您可以从FireDaemon或SvrAny调用powershell脚本,但您也可以使用计划任务来继续重新启动脚本。