首页 > 解决方案 > 如何使用 UNIX 工具对“MON_YYYY_day_NUM”时间进行排序?

问题描述

我想知道如何根据时间对这个示例进行排序。我已经根据其他所有内容对其进行了排序,但我无法弄清楚如何使用时间对其进行排序(例如 07:30 部分)。

我当前的代码:( sort -t"_" -k3n -k2M -k5n 最后一次排序还需要实现时间排序)

仍然需要排序的是时间:

Dunaj_Dec_2000_day_1_13: 00.jpg Rim_Jan_2001_day_1_13:
00.jpg
Ljubljana_Nov_2002_day_2_07:
10.jpg Rim_Jan_2003_day_3_08:40.jpg
Rim_Jan_2003_day_3_08:30.jpg

非常感谢任何帮助或只是正确方向的一点!

标签: bashshell

解决方案


按字母顺序; 固定位数的 24 小时时间可以使用纯字母排序进行排序。

sort -t"_" -k3n -k2M -k5n -k6  # default sorting
sort -t"_" -k3n -k2M -k5n -k6V # version-number sort.

还有一个版本排序V可以正常工作。


推荐阅读