如何在Powershell中对多维数组进行排序

时间:2015-11-19 18:48:40

标签: powershell multidimensional-array powershell-v4.0

我有一个脚本来定期清理文件夹。每个月创建3-4个子文件夹;我想要完成的是每月保留一个文件夹并删除每个服务器上该文件夹上的其余文件夹。我成功完成了剧本,但遇到了下面的障碍。

我的数组如下所示;

$Array = ((Filepath,Timestamp2),(Filepath,Timestamp3),(Filepath,Timestamp1),(Filepath,Timestamp4))

我想做的是,按时间戳排序数组中的元素;怎么做?如果有任何其他问题,请告诉我。

1 个答案:

答案 0 :(得分:1)

我的建议是将数组数组转换为自定义对象列表,并按Timestamp属性对该列表进行排序:

$array | ForEach-Object {
  New-Object -Type PSCustomObject -Property @{
    Filepath  = $_[0]
    Timestamp = $_[1]
  }
} | Sort-Object Timestamp