按时间顺序排列工作

Mar*_*cos 11 date sort at

可能是我放错地方的简单解决方案。如何获得atq按时间顺序排序的输出,以便我可以轻松查看下一个应该运行的人?在man对页面sort没有任何关系的内置识别类似下面的时间戳:

atq
1264    Sat Mar 24 15:03:00 2012 a master
1445    Sat Mar 24 20:28:00 2012 a master
1548    Sun Mar 25 15:09:00 2012 a master
1193    Sat Mar 24 11:03:00 2012 a master
1359    Sat Mar 24 17:13:00 2012 a master
1726    Mon Mar 26 21:24:00 2012 a master
1736    Mon Mar 26 22:04:00 2012 a master
1748    Mon Mar 26 22:46:00 2012 a master
1704    Mon Mar 26 20:19:00 2012 a master
1288    Sat Mar 24 15:38:00 2012 a master
1532    Sun Mar 25 11:53:00 2012 a master
Run Code Online (Sandbox Code Playgroud)

atq |sort 在工作 id 的跳跃中也不起作用。

Gil*_*il' 15

假设你在 Linux 上,输出atq的日期总是相同的格式。按适当的顺序对字段进行排序,注意声明哪些是数字或月份名称。确保为月份名称使用英语语言环境,因为这是atq使用的。

atq | sort -k 6n -k 3M -k 4n -k 5 -k 7 -k 1
#          year  month day   time queue id
Run Code Online (Sandbox Code Playgroud)