1

Possible Duplicate:
List files sorted numerically

How can I sort this according to the number of last field? I tried with sort -t ' ' -k9,10n:

-rw-r--r-- 1 root   root    440 May 14 08:52 test.txt.6
-rw-r--r-- 1 root   root    470 May 14 08:52 test.txt.8
-rw-r--r-- 1 root   root   2.6K May 14 08:52 test.txt.14
-rw-r--r-- 1 root   root    449 May 14 08:52 test.txt.7
-rw-r--r-- 1 root   root    434 May 14 08:52 test.txt.13
-rw-r--r-- 1 root   root    554 May 14 08:52 test.txt.4
-rw-r--r-- 1 root   root    426 May 14 08:52 test.txt.12
-rw-r--r-- 1 root   root   1.6K May 14 08:52 test.txt.5
-rw-r--r-- 1 root   root   7.2K May 14 08:52 test.txt.11
-rw-r--r-- 1 root   root    444 May 14 08:52 test.txt.3
-rw-r--r-- 1 root   root    927 May 14 08:52 test.txt.9
-rw-r--r-- 1 root   root    681 May 14 08:52 test.txt.15
-rw-r--r-- 1 root   root    427 May 14 08:52 test.txt.2
-rw-r--r-- 1 root   root    458 May 14 08:52 test.txt.16
-rw-r--r-- 1 root   root   2.4K May 14 08:52 test.txt.10
-rw-r--r-- 1 root   root    423 May 14 08:52 test.txt.17
-rw-r--r-- 1 root   root    424 May 14 08:52 test.txt.1
2
  • 4
    Tried ls -v as suggested in List files sorted numerically? Commented May 14, 2012 at 10:50
  • @manatwork: if you have the answer, why not post it as an answer? Commented May 14, 2012 at 12:50

3 Answers 3

2

Well, part of the problem is that -t ' ' will not collapse the separators so your ninth column will be the 4-char sizes and empty on the three-chars. Leave it out and you get collapsed whitespace like you want. The other part of the problem is, as others have said, is that the fields are not numeric. Fortunately, they resemble version numbers closely enough you can use the version sort (-V) to order them. Further, if they are going to be contiguous (i.e. 1-17, not missing any), you can use the braces as I mentioned in the other thread you were directed to (test.txt.{1..17}).

ls -l | sort -Vk9

echo test.text.{1..17}
1

you can use the following command and you will get them sorted the way you want: ls -l -v

0

A common mistake using sort it to not to use the "-n" argument when sorting by numerical values.

3
  • @user18818 did specified the n. The problem is the given field is not numeric. Commented May 14, 2012 at 12:37
  • how can i solve "space problem" Commented May 14, 2012 at 13:43
  • 2
    @user18815, call NASA? Seriously, if this is a different question, create a new question. Commented May 14, 2012 at 14:06

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.