让我们
16:00_17/06/2022
12:31_10/05/2022
10:34_07/03/2023
11:17_12/04/2022
12:37_10/05/2022
我想按升序对这个输出进行排序以获得这个:
11:17_12/04/2022
12:31_10/05/2022
12:37_10/05/2022
16:00_17/06/2022
10:34_07/03/2023
我试过了sort -t '_' -k2 -k1
,sort -t '/' -k3 -k2 -k1
但我已经得到了一个杂乱无章的安排。
任何人都可以提出任何建议吗?
谢谢你。
假设您的输入格式是
hour:minute_day-of-month/month/year
,那么一个方便的选项可能是dsort
从dateutils
包中使用:如果您需要使用普通 GNU 来执行此操作
sort
,那么如果字段具有固定宽度,那么您可以使用F.C
键定义的扩展 (field.character) 形式将第一个/
-delimited 字段“拆分”为H:M
andd
并在后者上排序首先,例如。