Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've got a column file like this:

1 1 1 AKSDFJADFKASDJFAK
2 1 1 ADKLCJASDLKCJDLACKADCJLKDACJADS
3 1 2 AKLJDFHALKDJFHLKJSDKSDFHAKJFDHAKFHJAKFJ

And I would like to sort the entries by the fourth column, with the longest word first. Any suggestions?

share|improve this question
up vote 7 down vote accepted

Try this:

awk '{print $0" "length($4)}' infile | sort -k5,5rn | sed -e 's/ [0-9]*$//' > outfile
share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .