Except that sometimes I need 30 minutes to look for an obscure option and how to use it exactly to get the result I want.
For instance,
sort is cool.  It sorts lines so fast no spreadsheet application is worth a second, nay, even a first thought.  Heck, it even ferrets out unique lines calmly!Then I have this file, which is all fields of numbers, e.g.
1 1 0 0 0
1 2 2 0 2
...
And I needed it to be sorted by the first field, then the second. Running plain
sort on it gave me1 1 0 0 0
1 10 0 10 10
1 11 ...
...
1 1921 ...
1 2 ...
OK, so it's not seeing the numbers as numbers, it's seeing them as ASCII strings. A
man page look-up later, I tried sort -n.  Then sort -k, then with both options.  To no avail.  Time to Google.30 minutes of surfing later, I finally found this nugget of an example that did the trick:
sort -k 1n,1 -k 2n,2See, you have to state explicitly (via
-k) that the first key starts and ends at field 1, and to treat it as a number, and repeat it with field 2 (or any other fields you'd like to use as the sort key) as well.I love Bash commands.
 
No comments:
Post a Comment