PowerShell - 使用 PowerShell 时 WSUS 服务器的上次报告和同步时间值不匹配
PowerShell - last report and sync time values of WSUS servers do not match when PowerShell is used
我使用 PoshWSUS 2.3.1.6
当我转到 Windows 10 中的 "Update Services" 并连接到我的 WSUS 服务器时,我看到服务器中的许多工作站具有不同的 LastStatusReport
和 LastContact
日期下面显示了两个例子。请注意,我的本地 WSUS 服务器和所有工作站都配置为相同的时区:Eastern Standard Time (UTC-05:00)
我的目标是通过 PowerShell 获取这些日期并导出为 CSV。我为此使用的代码:
& Get-PoshWSUSClient | select @{name="Computer";expression={$_.FullDomainName}},@{name="Last Status Report";expression={$_.LastReportedStatusTime}}, @{name="Last Contact";expression={$_.LastSyncTime}} | export-csv -NoTypeInformation -append $FileOutput
这 returns 不一致,因为返回的时间值提前 4 小时。图片中的工作站导出如下:
590 10/16/2019 01:40 10/16/2019 04:40
413 9/26/1019 05:38 10/16/2019 05:56
那么,发生这种情况的原因应该是什么?是否可以将时区信息添加到时间值?是否可以使用时区信息将值转换为日期时间?我在下面试过,结果还是一样。
Get-pswsusclient | select @{name="Computer";expression={$_.FullDomainName}},@{name="LastReportedStatusTime";expression={[datetime]$_.LastReportedStatusTime}}, @{name="LastSyncTime";expression={[datetime]$_.LastSyncTime}}
如有任何帮助,我们将不胜感激。
返回的日期似乎是 UTC 时间。您可以查看 .Kind
属性。
ToLocalTime()
应该有帮助。
我使用 PoshWSUS 2.3.1.6
当我转到 Windows 10 中的 "Update Services" 并连接到我的 WSUS 服务器时,我看到服务器中的许多工作站具有不同的 LastStatusReport
和 LastContact
日期下面显示了两个例子。请注意,我的本地 WSUS 服务器和所有工作站都配置为相同的时区:Eastern Standard Time (UTC-05:00)
我的目标是通过 PowerShell 获取这些日期并导出为 CSV。我为此使用的代码:
& Get-PoshWSUSClient | select @{name="Computer";expression={$_.FullDomainName}},@{name="Last Status Report";expression={$_.LastReportedStatusTime}}, @{name="Last Contact";expression={$_.LastSyncTime}} | export-csv -NoTypeInformation -append $FileOutput
这 returns 不一致,因为返回的时间值提前 4 小时。图片中的工作站导出如下:
590 10/16/2019 01:40 10/16/2019 04:40
413 9/26/1019 05:38 10/16/2019 05:56
那么,发生这种情况的原因应该是什么?是否可以将时区信息添加到时间值?是否可以使用时区信息将值转换为日期时间?我在下面试过,结果还是一样。
Get-pswsusclient | select @{name="Computer";expression={$_.FullDomainName}},@{name="LastReportedStatusTime";expression={[datetime]$_.LastReportedStatusTime}}, @{name="LastSyncTime";expression={[datetime]$_.LastSyncTime}}
如有任何帮助,我们将不胜感激。
返回的日期似乎是 UTC 时间。您可以查看 .Kind
属性。
ToLocalTime()
应该有帮助。