If using GNU sort
or compatible, you can use its -g
switch to do a general numeric sort:
$ sort -g -k5,5 file
name: yyy --- time: 3.2 seconds
name: xxx --- time: 5.4 seconds
name: zzz --- time: 6.4 seconds
The -k5,5
tells sort to perform the sort on just the 5th column.
Usage
Keep in mind the details from the info sort
page:
'-g'
'--general-numeric-sort'
'--sort=general-numeric'
Sort numerically, converting a prefix of each line to a long
double-precision floating point number. *Note Floating point::.
Do not report overflow, underflow, or conversion errors. Use the
following collating sequence:
* Lines that do not start with numbers (all considered to be
equal).
* NaNs ("Not a Number" values, in IEEE floating point
arithmetic) in a consistent but machine-dependent order.
* Minus infinity.
* Finite numbers in ascending numeric order (with -0 and +0
equal).
* Plus infinity.
Use this option only if there is no alternative; it is much slower
than '--numeric-sort' ('-n') and it can lose information when
converting to floating point.