【问题标题】:Writing To Windows Event Log Using Powershell使用 Powershell 写入 Windows 事件日志
【发布时间】:2014-10-29 12:51:09
【问题描述】:

全部,

我有一个批处理脚本,可以在单个文件夹位置生成多个日志文件。日志文件只是基于其他应用程序输出的单独文本行。我能够使用“New-EventLog”的 powershell cmdlet 在我的 Windows 7 客户端计算机上创建自定义事件日志。我现在想做的是获取每个日志文件中的单独文本行,并一次循环遍历它们,将每一行作为单独的条目输出到事件日志。此时我所能做的就是将单个(但整个)日志文件发送到单个事件日志条目。以下是我所拥有的:

@PowerShell -NoProfile -command "$OutText = Get-Content logfile.txt | Out-String;Write-EventLog -LogName CUSTOM -Source SCRIPT -EntryType Information -EventID 999 -Message $OutText

请注意,为了简单起见,我希望能够在批处理脚本中运行它,但我对其他选项持开放态度。

谢谢。

【问题讨论】:

    标签: powershell batch-file


    【解决方案1】:

    试试这个:

    Get-Content C:\Scripts\LogFile.txt | ForEach $_ {Write-EventLog -LogName CUSTOM -Source SCRIPT -EntryType Information -EventId 999 -Message $_
    

    如果使用 v4 或更高版本的 PowerShell,您可以在 ForEach 之后删除 $_

    【讨论】:

    • 在 v3 中 ForEach 之后也不需要 $_。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多