首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对Get-EventLog没有影响的排序对象

对Get-EventLog没有影响的排序对象
EN

Stack Overflow用户
提问于 2018-08-02 16:07:34
回答 2查看 1.4K关注 0票数 3

我正试图通过powershell在Security中找到最古老的保留事件。

使用以下命令:(Get-EventLog Security | Sort-Object -Property Time -Descending)

这将返回一个没有排序的列表。我在这里做错什么了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-02 16:34:57

这不是Get-EventLog的问题,而是Get-EventLog的输出没有Porperty Time这一事实。

使用Get-Member显示可用属性的列表。

代码语言:javascript
复制
Get-EventLog | Get-Member

您将看到,有一个TimeGenerated属性,您可以使用它。

代码语言:javascript
复制
Get-EventLog Security | Sort-Object -Property TimeGenerated -Descending

此外,我还想补充一句,这是默认的订单。但是,如果您想切换订单,我建议使用Get-WinEvent,它有一个-Oldest开关。

代码语言:javascript
复制
Get-WinEvent -LogName Security -Oldest
票数 4
EN

Stack Overflow用户

发布于 2018-08-02 16:26:27

"Time“是为输出目的而生成的字符串,而不是datetime对象,因此正在进行的排序不是按时间顺序进行的,而是不存在的。

查看DotNetTypes.format.ps1xml,您将看到它使用的是TimeGenerated属性的格式化版本。

代码语言:javascript
复制
<TableColumnHeader>
    <Label>Time</Label>
    <Width>13</Width>
</TableColumnHeader>
...
...
<PropertyName>TimeGenerated</PropertyName>
<FormatString>{0:MMM} {0:dd} {0:HH}:{0:mm}</FormatString>

这样做是为了获得更友好的默认输出,并附带您正在处理的问题的警告。

因此,sort-object使用空值“工作”,因此缺少可见的更改。

两种方法都可以使用属性TimeGenerated属性代替

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51658007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档