我尝试使用PowerShell在Windows 2k8中尾随日志文件,然后将其发送到Windows事件查看器。
我知道powershell可以' tail'运行日志:
Get-Content -Path C:\logs\events.log -Wait
这将实时拖尾日志(类似于linux尾部的-f)。
Powershell还可以写入Windows事件系统日志:
Write-EventLog System -source System -eventid 12345 -message "test"
我想知道如何(或者如果)我可以将尾部日志结果作为Write-EventLog消息进行管道传输?
我认为既然这是一个Windows环境,可能需要编写脚本来调用取自Get-Content的消息变量?有谁知道怎么做,或者是否可以做到这一点?我的谷歌搜索没有引导我进行实时Windows事件记录。
答案 0 :(得分:4)
你可以这样做:
function Write-EventlogCustom($msg) {
Write-EventLog System -source System -eventid 12345 -message $msg
}
Get-Content -Path C:\logs\events.log -Wait | % {Write-EventlogCustom $_}
你不一定需要创建一个函数,我只是用它来使代码更清晰。