>>>>> lina <lina.lastn...@gmail.com> writes: First of all, a kindly reminder: there's a news:comp.unix.shell newsgroup (also available via Google Groups [1], though a proper newsreader software is recommended), with a few truly knowledgeable folks among the subscribers, which such questions should've been pointed to.
[1] http://groups.google.com/group/comp.unix.shell/ […] > I just remember the sort command, but I still don't know how to get > the ideal one, > after I tried the sort -n -k2 , something changed on field 2 but it's > still a bit away from the one I need. Unfortunately, the numeric (-n) sort cannot be performed over the field that contains numbers prefixed with arbitrary strings. Therefore, it's necessary to split such a field into the separate prefix and number parts, like (assuming GNU Sed): $ sed -e 's/^\(\s*\w\+\s\+[^0-9[:blank:]]\+\)\([[:digit:]]\+\)/\1 \2/' 238CHO C10 3617 1.697 5.334 9.317 238CHO C11 3624 1.665 5.468 9.092 ^D 238CHO C 10 3617 1.697 5.334 9.317 238CHO C 11 3624 1.665 5.468 9.092 $ Then, the output may be sorted on the now-third column, and the extra space removed. Thus: $ sed -e 's/^\(\s*\w\+\s\+[^0-9[:blank:]]\+\)\([[:digit:]]\+\)/\1 \2/' \ | sort -nk 3,3 -k1,1 \ | sed -e 's/^\(\s*\w\+\s\+[^0-9[:blank:]]\+\)\s\([[:digit:]]\+\)/\1\2/' […] -- FSF associate member #7257 -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/86livkp9o3....@gray.siamics.net