gpt4 book ai didi

Powershell 不正确的日期排序

转载 作者:行者123 更新时间:2023-12-01 07:26:39 25 4
gpt4 key购买 nike

我有一个 CSV 文件,其中包含各种不同的 ID。与 a little help我已经能够将文件修剪为具有最早日期的 ID,并且效果很好......大多数情况下。我有几条记录似乎返回了最新日期,而另一个记录返回了最旧的日期,我不知道为什么。发生这种情况的记录总是相同的。

这是来自我的输入 CSV 的示例:

Number  File Date
OU00067949, 6/14/2012,
OU00067949, 6/19/2012,
OU00067949, 11/15/2012,
OU00067949, 1/30/2013,
OU00080302, 1/3/2013,
OU00080302, 1/3/2013,
OU00080302, 12/28/2012,
OU00080302, 12/28/2012,
OU00080302, 12/27/2012,
OU00080302, 12/27/2012,
OU00080281, 2/14/2013,
OU00080281, 1/30/2013,
OU00080281, 1/16/2013,
OU00080319, 12/27/2012,
OU00080319, 12/27/2012,

这是输出:
Number  File Date
OU00067949, 1/30/2013,
OU00080302, 1/3/2013,
OU00080281, 1/16/2013,
OU00080319, 12/27/2012,

我期待 OU00067949 的 6/14/2012 日期,因为这是最旧的日期。相反,我收到了 1/30/2013。 OU00080302 也发生了同样的情况,但其他的都是正确的。任何线索可能导致这种情况?

这就是脚本的全部内容:
Import-CSV $ImportFile | Group-Object "Number" | ForEach-Object { $_.Group | Sort-Object "File Date" | Select -First 1} | Export-CSV $ExportFile -NoTypeInformation

任何帮助将不胜感激。

最佳答案

看起来它试图将日期排序为字符串。试试这个:

Import-CSV $ImportFile | Group-Object "Number" | ForEach-Object { $_.Group | Sort-Object { $_."File Date" -as [datetime] } | Select -First 1} | Export-CSV $ExportFile -NoTypeInformation

所以这:
Sort-Object "File Date"

变成了这个:
Sort-Object { $_."File Date" -as [datetime] }

信用在这里:
  • Casting dates on the fly to sort with PowerShell (by Jonathan Noble)
  • 关于Powershell 不正确的日期排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19792194/

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