Feb 03 15:58:27 2020
Feb 03 16:01:23 2020
Feb 03 16:11:29 2020
Feb 04 11:01:49 2020
Jan 20 16:27:38 2020
Jan 20 16:29:51 2020
Jan 20 16:44:39 2020
Jan 20 16:56:41 2020
I tried: sort -t: -k1 and result below:
Feb 03 15:58:27 2020
Feb 03 16:01:23 2020
Feb 03 16:11:29 2020
Feb 04 11:01:49 2020
Jan 20 16:27:38 2020
Jan 20 16:29:51 2020
Jan 20 16:44:39 2020
Jan 20 16:56:41 2020
I'd like to have Feb 04 11:01:49 2020 as the last line.
Thanks in advance!
--- Post updated at 07:02 PM ---
I tried sort -nrz and result below. close but not in order:
Jan 20 16:56:41
Feb 03 16:11:29
Jan 20 16:27:38
Jan 20 16:29:51
Feb 03 15:58:27
Feb 03 16:01:23
Jan 20 16:44:39
Feb 04 11:01:49
To sort dates it works best to convert them to epoch seconds - the number of seconds since Jan 1 970. This code adds an epoch time sorts based on the epoch time, then prints the original minus the seconds: this assumes some kin of linux OS -
Jan 20 16:27:38 2020
Jan 20 16:29:51 2020
Jan 20 16:44:39 2020
Jan 20 16:56:41 2020
Feb 03 15:58:27 2020
Feb 03 16:01:23 2020
Feb 03 16:11:29 2020
Feb 04 11:01:49 2020
--- Post updated at 17:16 ---
@Drl - one of our senior people, may mention getting a linux package for date operations, one of the commands is "dsort" which does exactly what the code above does. Hopefully he will mention where to download it. I do not know
$ sort -M file
Jan 20 16:27:38 2020
Jan 20 16:29:51 2020
Jan 20 16:44:39 2020
Jan 20 16:56:41 2020
Feb 03 15:58:27 2020
Feb 03 16:01:23 2020
Feb 03 16:11:29 2020
Feb 04 11:01:49 2020
The code is available in some repositories (I just installed it in a VM for Debian Buster), and also at github, as newer versions 0.4.3 .. 0.4.7:
dateutils.dsort Sort contents of FILE chronologically. (man)
Path : /usr/bin/dateutils.dsort
Package : dateutils
Home : http://www.fresse.org/dateutils
Version : 0.3.1
Type : ELF 64-bit LSB shared object, x86-64, version 1 ( ...)
Help : probably available with -h,--help
Home : https://github.com/hroptatyr/dateutils (doc)