如何使用powershell按年龄对数据进行排序

2023-12-10

尝试在 powershell 中按年龄对 txt 文件进行排序,数据如下所示:

史密斯,约翰,65
沃克,卢克,25
马诺·吉尔,88 岁

试图让它看起来像这样

马诺,吉尔,88
史密斯,约翰,65
沃克,卢克,25

我尝试过 Format-Table 但只会按顺序对名称进行排序

任何建议都会很棒


Use Sort-Object with a 计算属性:

# Simulate input from a file (e.g., Get-Content in.txt)
$fileLines = 
@'
Smith,John,65
Walker,Luke,25
Mano,Jill,88
'@ -split '\r?\n'

$fileLines | Sort-Object -Descending { [int] ($_ -split ',')[-1] } 

这是按年龄排序的only。你可以添加额外的排序标准,以便在相同年龄的人中按姓名排序。

不过,此时您最好将数据作为 CSV 数据处理,使用Import-Csv为了将文件解析为objects您可以使用(该示例使用内存中的 cmdlet 版本,ConvertFrom-Csv):

# Simulate input from a file (e.g., Import-Csv in.csv)
$csvRows = @'
Smith,John,65
Walker,Luke,25
Mano,Jill,88
'@ | ConvertFrom-Csv -Header last, first, age

# Sort by age, then by name.
$csvRows | 
  Sort-Object -Descending { [int] $_.age }, last, first

Note:

  • 由于您的数据缺少标题(列名称),因此它是通过-Header争论。

  • Import-Csv / ConvertTo-Csv将 CSV 数据解析为[pscustomobject]其属性根据 CSV 列命名并包含字​​段值的实例。

  • 您可以使用Export-Csv将结果导出回 CSV 文件,总是with一个标题。

    • In Windows PowerShell,你总会得到双引号字段值。
    • In PowerShell(核心)7+,您可以使用以下命令控制引用行为-UseQuotes and QuoteField参数。
    • Use -Encoding根据需要控制输出文件的字符编码;值得注意的是,在 Windows PowerShell 中,默认情况下会生成 ASCII(!) 文件;在 PowerShell (Core) 7+ 中,无 BOM 的 UTF-8 是合理的默认值(与 Windows PowerShell 不同,它是跨域的默认值)allcmdlet)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用powershell按年龄对数据进行排序 的相关文章

  • ggplot2 方面的内部排序

    我正在尝试在 ggplot2 中绘制一个方面 但我很难使不同方面的内部顺序正确 数据如下 head THAT EXT ID FILE GENRE NODE 1 CKC 1823 01 CKC Novels better 2 CKC 1824
  • 使用排序函数按 NSDates 对数组进行排序[重复]

    这个问题在这里已经有答案了 我有一个名为的模型类Event import Foundation import MapKit public class Event let id Int var title String let status
  • Powershell 中的“$”是什么?

    是什么意思 在 Powershell 中 Edit TechNet 答案 http technet microsoft com en us library hh847768 aspx同义反复 没有解释 成功 或 失败 的含义 包含上次操作的
  • 在Powershell中传递引用类型参数

    function test1 param System Collections ArrayList x x Add Test1Add write in Test1 x x New Object System Collections Arra
  • 如何使用卸载路径卸载 MSI

    我正在尝试获取一组应用程序的卸载路径并卸载它们 到目前为止 我得到了卸载路径列表 但我很难真正卸载这些程序 到目前为止我的代码是 app msi1 msi2 msi3 msi4 Regpath HKLM Software Microsoft
  • Java 中类似 HashMap 的可排序数据结构?

    Java 中是否有某种类似于 HashMap 的数据结构 可以按键或值排序 在 PHP 中 您可以拥有可排序的关联数组 Java中有这样的东西吗 HashMaps 几乎按照定义是未排序的 一个好的哈希函数会产生看似随机的密钥分布 如果你想使
  • Perl:散列 2 中数组的数值排序(施瓦茨变换)

    这实际上是该线程的后续内容 Perl 散列中数组的数字排序 https stackoverflow com questions 7914931 perl numerical sort of arrays in a hash 我无法编辑原始问
  • 在Windows中根据修改日期删除数百万个文件的最有效方法

    目标 使用脚本运行 500 万至 1000 万个 XML 文件并评估其日期 如果超过 90 天则删除该文件 该脚本将每天运行 问题 使用 powershell Get ChildItem recurse 会导致脚本锁定并无法删除任何文件 我
  • 如何使用类在 PowerShell 中实现事件处理

    我希望能够创建一个自定义事件 该事件将触发订阅该事件的函数或对象 我查看了一些功能 例如 New Event and Register ObjectEvent 但我不完全确定如何有效地将它们组合在一起 我想要的想法是让一个函数在引发某个事件
  • 对 pandas 系列进行排序

    我试图弄清楚如何以智能方式对 groupby 聚合生成的系列进行排序 我生成 DataFrame 的聚合 如下所示 means df testColumn groupby df testCategory mean 这产生了一个系列 我现在尝
  • 将 int 数组从最高到最低排序

    所以我刚刚了解到Arrays sort arrayName 并将其应用到我的一个项目中 但我发现它是从最低到最高排序的 有没有办法让它做相反的事情 我认为我不需要发布有问题的代码 但如果需要 我会发布它 如果您使用Integer 代替int
  • 如何按日期升序对对象进行排序?

    如果我有一个对象列表 var objectList LIST OF OBJECT each object列表中包含三个属性 name date gender 如何按 对列表中的对象进行排序date 属性升序 the date 属性包含字符串
  • 根据另一个列表的内容对列表进行排序

    我有一个包含整数列表的列表和另一个包含同时包含整数和字符串的类的列表 我想做的是按字母顺序对列表进行排序 将第一个列表中存在的条目放在前面 这是我的代码和预期输出 using System using System Collections
  • 使用 init.ps1 和 nuget 将文件复制到解决方案文件夹

    我在使用 nuget 包的 init ps1 中的 ps 脚本时遇到问题 我试图在安装包时创建一个解决方案文件夹 然后将 dll pdbs 复制到此文件夹 并删除项目中包安装的源 dll pdbs 我能够创建解决方案文件夹 但将文件从 co
  • powershell cmdlet 的枚举参数

    我正在 powershell 上编写一个 cmdlet 脚本 我想使用 eum 作为参数之一 但我不知道在哪里放置枚举定义 以便它对于 cmdlet 参数声明可见 例如 我有这样的脚本参数定义 cmdletbinding param Par
  • 如何并行执行PowerShell函数多次?

    我不确定是否需要将其称为多线程 基于作业或异步的需求 但基本上我有一个 Powershell 脚本函数 它需要多个参数 并且我需要使用不同的参数多次调用它并让它们运行在平行下 目前 我这样调用该函数 Execute param1 param
  • VSTS 任务组 Powershell 参数

    我使用具有四个参数的 Azure Powershell 任务内联脚本创建了 VSTS 任务组 我已将此任务组添加到发布定义并配置参数 当我尝试释放时失败并出现以下错误 2018 03 23T10 28 42 2811600Z 错误 在 C
  • 查找“未找到身份”的角色分配的可靠方法是什么?在 Azure 上使用 Powershell?

    如果您在 Azure 中分配角色 然后在删除角色分配之前删除该身份 则会出现 找不到身份 的情况 健康 状况 它是无害的 但它会占用角色分配空位并使角色分配列表变得混乱 我想找到并删除这些 我想这个 Get AzRoleAssignment
  • Powershell从字符串中获取数字

    大家好 我正在尝试使用 powershell 从用户 ID 中获取号码 我们使用的格式是名字的第一个字母 姓氏的前四个字母和学生 ID 因此名为 John Smith ID 123456 的学生将是 jsmit123456 如果用户的名字少
  • 难题:需要一个不允许排序和/或散列的“复杂”等价关系/分区的示例

    从问题 分区比排序更容易吗 https stackoverflow com questions 3256468 is partitioning easier than sorting 假设我有一个项目列表和一个 它们之间的等价关系 以及 比

随机推荐

  • 已保存实例状态返回 null

    有人可以解释为什么我的savedInstanceState 中的值为空吗 我有 3 个小部件 一个 EditText Button 和 TextView 该人输入他们想要的内容 该短语会在 TextView 中弹出 我想在翻转手机时保留输入
  • 将 php 数组重新排列为嵌套的分层数组

    如何使用 php 将 array 1 转换为 array 2 结构 第一个数组是对生物体列表进行数据库查询的结果 每个生物体都按其目 科 属 种进行分类 从层次上讲 物种是各种属的子分类 属分类是各种科的子分类等 在命名空间术语中 您可以像
  • 我如何通知用户有关 django 中的 webhook

    您好 我在 django 中遇到了网络挂钩问题 我需要一种方法来通知用户他 她已成功付款 通过向我的处理器添加 URL 来向我的网络发送付款成功请求 我会收到有关成功网络挂钩的通知钩子如何向用户显示它以通知其是否成功 我的代码是 这是用户将
  • 使用自定义语法显示 Haskell 元组列表

    我有一个元组列表 1 a yes 2 b no 3 c ok 我如何以以下形式显示此列表作为输出 1 a yes 2 b no 3 c ok 看起来您想要进行的转换是去掉引号字符 如果是 则过滤调用结果show你的数据就足够了 gt let
  • 响应式 Durandal 对话框

    我在新应用程序中使用 Durandal 但 Durandal 的对话框窗口存在问题 我使用它从用户那里获取一些数据 当我手动设置窗口宽度时 默认情况下 Durandal 从 JavaScript 设置窗口位置 如果我想要窗口宽度为 600p
  • 如何对数据库模式进行版本控制? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 您如何准备 SQL 增量 您是否手动将每个模式更改 SQL 保存到增量文件夹中 或者您是否有某种自动比较过程 我对版本控制数据库模式以及源代码的约定感兴趣 也许是一个区分模式的预提交挂钩
  • 从字符串中提取所有数字

    假设我有一个字符串 例如123ad456 我想创建一种将数字组分成一个列表的方法 这样输出将类似于123 456 我试过做return Regex Match str d Value 但只输出第一次出现的数字 因此输出将是123 我也知道我
  • POI Excel:获取样式名称

    我想读取应用于 xlsx 文档中单元格的样式的名称 我已经提取了该文件 在 xl styles xml 中我可以找到样式名称
  • 实体框架多对多关系

    好吧 我正在尝试弄清楚如何正确设置我的数据库 我有两节课 public class Event public int EventId get set public string EventName get set and public cl
  • Java 原始类型和泛型交互

    如果我有一个 Stack 类 class Stack
  • 如何使用另一个类中的 Tcpclient 将数据发送到所有已连接的套接字连接

    Closed 这个问题需要细节或清晰度 目前不接受答案 public void send string msg a2 Encoding ASCII GetBytes msg networkStream clientSocket GetStr
  • R 将特定行和列乘以常数

    我有以下数据 type lt c 1 4 year1 lt c 1 4 year2 lt c 1 4 year3 lt c 1 4 data lt data frame type year1 year2 year3 我想将年份列中的底部两行
  • 的 Html 帮助器

    有没有HTMLHelper用于文件上传 具体来说 我正在寻找替代品
  • 如何通过 R 在 Outlook 正文中显示 Excel 工作表

    我可以通过 RDCOMClient 包将 Excel 文件附加到 Outlook 中 但是如何通过R在邮件正文中显示excel工作表内容 假设工作表中包含一个表格和一个图形 library RDCOMClient init com api
  • 为什么像 3.14 这样的浮点值在 MSVC 中默认被视为 double ?

    为什么我需要输入 3 14f 而不是 3 14 来禁用所有这些警告 这有一个连贯的理由吗 这就是 C 和 C 标准所决定的 浮点文字的类型为 double 如果您需要它们是浮点型 则可以在它们后面加上后缀f 似乎没有任何具体说明原因 但我猜
  • Silverlight 是否缓存 Web 服务调用?

    这是问题所在 我的 Silverlight 应用程序正在使用 WebClient 调用名为 getCampaigns 的 HTTP Web 服务 该服务返回 Campaign 对象的 JSON 数据数组 然后 用户可以与请求的对象进行交互
  • 如何解决“您的应用似乎未启用适用于 Android 的 Places API”

    这个错误已经困扰我一天多了 我已经彻底搜索过 但没有一个答案为我提供解决方案 我已经正确设置了 API 密钥 并提供了应用程序限制 提供了包名称和 SHA1 密钥 这是代码 清单文件
  • 如何使用一个或多个 StructType 创建架构 (StructType)?

    我正在尝试创建一个StructType在另一个里面StructType 但它只允许添加一个StructField 我找不到任何添加方法StructType to it 如何创建StructType下面的字符串表示的模式 struct
  • 如何使用 Cargo maven 插件远程部署 WAR 到 JBoss 5.1.0.GA?

    我正在尝试使用 Cargo maven 插件将 WAR 文件远程部署到 JBoss 5 0 1 GA 但似乎不能 我发现了类似的线程 但它们最终都没有帮助我解决我的问题 我遵循这些指示 一些看起来很重要的点是 从 CARGO 1 0 3 开
  • 如何使用powershell按年龄对数据进行排序

    尝试在 powershell 中按年龄对 txt 文件进行排序 数据如下所示 史密斯 约翰 65沃克 卢克 25马诺 吉尔 88 岁 试图让它看起来像这样 马诺 吉尔 88史密斯 约翰 65沃克 卢克 25 我尝试过 Format Tabl