gpt4 book ai didi

powershell - 在 PowerShell 中选择子属性

转载 作者:行者123 更新时间:2023-12-03 18:51:52 26 4
gpt4 key购买 nike

我在 PowerShell 中有一长串对象(更具体地说,是来自 Get-EventLog cmdlet 的 Windows 事件列表),我想过滤掉这些对象以找出谁访问了我的机器。我使用了以下内容:

Get-EventLog -LogName 安全 -InstanceId 4672 |选择对象 -Property TimeGenerated, ReplacementStrings[1]

但输出看起来像:

TimeGenerated        ReplacementStrings[1]
------------- ---------------------
6/17/2018 2:28:33 PM
6/17/2018 2:28:33 PM
6/17/2018 2:28:33 PM
6/17/2018 2:28:33 PM
6/17/2018 2:28:33 PM
...

我在右栏没有任何输出。

如果我从 ReplacementString 中删除 [1]:

TimeGenerated        ReplacementStrings
------------- ------------------
6/17/2018 2:28:33 PM {S-1-2-3-4, Username1, blablabla...}
6/17/2018 2:28:33 PM {S-1-2-3-4, Username2, blablabla...}
6/17/2018 2:28:33 PM {S-1-2-3-4, Username2, blablabla...}
6/17/2018 2:28:33 PM {S-1-2-3-4, Username1, blablabla...}
6/17/2018 2:28:33 PM {S-1-2-3-4, Username3, blablabla...}
...

我只需要 ReplacementStrings 中的用户名字段。

我可以使用 foreach 循环并手动集中到一个字符串,但我想将这些项目保留为对象供以后使用,所以这不是我的选择。

最佳答案

使用计算属性:

Get-WinEvent ... |
Select-Object -Property TimeGenerated,
@{Name='Username'; Expression={$_.ReplacementStrings[1]}}

关于powershell - 在 PowerShell 中选择子属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50896361/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com