当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:如何使用具有多个属性的排序对象

作者:精品下载站 日期:2024-12-14 20:32:46 浏览:13 分类:玩电脑

PowerShell:如何使用具有多个属性的排序对象


通常,您可能希望将数据文件导入 PowerShell,然后按多个属性对数据进行排序。

您可以使用以下基本语法来执行此操作:

Import-Csv $my_file | Sort-Object -Property @{Expression={[int]$_.points}}, @{Expression={[int]$_.assists} ;Descending=$true}

此特定示例导入在 $my_file 对象中的路径处指定的文件,然后根据 points 列中的值按升序对行进行排序,然后按降序排序基于助攻列中的值。

注意:在排序之前,我们使用[int]pointsassists列转换为整数数据类型。

以下示例展示了如何在实践中使用此语法。

示例:在 PowerShell 中使用 Sort-Object 按多个属性排序

假设我们有一个 CSV 文件保存在以下位置:

c:\users\bobbi\nba_data.csv

假设我们使用 Import-Csv cmdlet 来查看整个文件的内容:

[玩转系统] PowerShell:如何使用具有多个属性的排序对象

该文件包含三列,显示不同篮球运动员的球队得分助攻

假设我们想按以下方式对行进行排序:

  • 首先,按点数列升序排列。
  • 然后,按助攻列降序排列。

我们可以使用以下语法来执行此操作:

Import-Csv $my_file | Sort-Object -Property @{Expression={[int]$_.points}}, @{Expression={[int]$_.assists} ;Descending=$true}

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] PowerShell:如何使用具有多个属性的排序对象

请注意,行按点数升序排序,然后按助攻降序排序。

注意#1:由于 Sort-Object cmdlet 默认情况下按升序对值进行排序,因此,如果需要,我们只需使用 降序=$true相反,希望对象按降序排序。

注意#2:在本例中,我们按两个属性排序,但您可以使用类似的语法按任意数量的属性排序。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯