1
我有日志文件是这样的:如何使用文件中的自定义日期进行排序?
Fri Jan 30 13:52:57 2015 1 10.1.1.1 0 /home/test1/MAIL_201401301353.201501301352.19721.sqlLdr b _ i r test1 ftp 0 * c
Fri Jan 30 13:52:58 2015 1 10.1.1.1 0 /home/test2/MAIL_201401301354.201501301352.12848.sqlLdr b _ i r test2 ftp 0 * c
Fri Jan 30 13:53:26 2015 1 10.1.1.1 0 /home/test3/MAIL_201401301352.201501301353.17772.sqlLdr b _ i r test3 ftp 0 * c
我需要日期值进行排序。日期值是第一个2014 ....
我能找到的日期值是这样的:
echo $log | awk '{print $9}' | grep -oP '(?<!\d)201\d{9}' | head -n 1
我如何排序这个日期值(从新到旧)?
谢谢。这对我有用。还有一个问题,如果line还有两个_字符就像这样:'XXX_YYY_MAIL_201 ...'我该怎么办?因为我可以使用-t只是一个字符。 – phe 2015-02-10 09:11:07
在这种情况下'sort -t/-k4,4 file'会更好'sort'命令。 – anubhava 2015-02-10 09:14:41
'sed -e's/MAIL_2/@ 2 /'file | sort -t @ ... | sed -e's/@/MAIL_ /''(未测试) – JJoao 2015-02-10 09:18:39