我有一个将数据写入MS SQL数据库的powershell脚本。 我使用命令get-winevent。如何减少powershell命令的输出?
行Message
很长,并且不包括所需的数据e.q. SID等。
如何切断此命令的输出?
更新
的代码片段看起来像:
$events = Get-WinEvent @{LogName = "System"; ID = 4726} | select LevelDisplayName, LogName, TaskDisplayName, TimeCreated,@{N='Message';E={
$m = [regex]::Match($_.Message, '.*Account Name: (?<account>[^ ]*).*Account Domain: (?<domain>[^ ]*).*')
"Account Name: $($m.Groups['account']) Account Domain: $($m.Groups['domain'])"
}}
$events
在控制台输出看起来像:
LevelDisplayName:信息
LOGNAME:安全
TaskDisplayName:用户帐户管理
TimeCreated:2016年7月18日十一时55分42秒
消息:账户名称:username_xxx帐户域:
你怎么能在Account Name:
和值是一些空的影响之间看到。我怎样才能忽略这种空洞的影响?
对你有什么影响?你需要截断消息,忽略消息? –
是的,我想截断行消息。现在的输出是: 用户帐户已被删除。主题:安全ID:SID_xxx帐户名称:username_xxx帐户域:domain_xxxx登录ID:目标帐户:安全ID:SID_xxx帐户名称:name_xxx帐户域:domain_xxx其他信息:权限 - 我只想显示帐户名称和帐户域。 –
答复已更新。 –