【发布时间】:2013-03-14 01:40:35
【问题描述】:
我对脚本非常陌生,如果这是一个非常明显的问题,请原谅我。我正在 Bourne shell 中编写约会跟踪脚本(不幸的是必须使用 Bourne)。我需要按日期顺序对约会进行排序,每个约会由冒号分隔的 7 列组成,如下所示:
1:26:2013:星期六:16.00:17.30:烧烤
1:24:2013:星期四:14.00:15.10:CSS 会议
1:25:2013:星期五:12.00:12.30:商务午餐
1:27:2013:Sunday:10.00:17.30:志愿者海滩清理
2:24:2013:星期日:20.00:24.00:派对
2:11:2013:Monday:16.00:17.30:看牙医
1:24:2013:Thursday:11.00:11.45:项目会议
3:24:2013:星期日:8.00:11.30:教堂野餐
2:8:2013:Friday:12.00:17.30:Halo 锦标赛
1:19:2013:星期六:16.00:20.30:扑克
这就是我目前所拥有的,它完全符合我的要求,只是它去掉了我的冒号分隔符。 awk -F : '{print $1, $2, $3, $4, $5, $6, $7 |"sort -k 1,1 -k 2,2n -k3,3n -n -o appts.txt"}' appts.txt
1 19 2013 星期六 16.00 20.30 扑克
1 24 2013 星期四 11.00 11.45 项目会议
1 24 2013 星期四 14.00 15.10 CSS 会议
1 25 2013 星期五 12.00 12.30 商务午餐
1 26 2013 周六 16.00 17.30 烧烤
如何取回冒号分隔符?
【问题讨论】:
-
排序顺序不应该是
-k 3n -k 1n -k 2n或类似的吗?