Birden çok sütunda sıralamaya çalışıyorum. Sonuçlar beklendiği gibi değil.
İşte verilerim (people.txt):
Simon Strange 62
Pete Brown 37
Mark Brown 46
Stefan Heinz 52
Tony Bedford 50
John Strange 51
Fred Bloggs 22
James Bedford 21
Emily Bedford 18
Ana Villamor 44
Alice Villamor 50
Francis Chepstow 56
Aşağıdaki doğru çalışır:
bash-3.2$ sort -k2 -k3 <people.txt
Emily Bedford 18
James Bedford 21
Tony Bedford 50
Fred Bloggs 22
Pete Brown 37
Mark Brown 46
Francis Chepstow 56
Stefan Heinz 52
John Strange 51
Simon Strange 62
Ana Villamor 44
Alice Villamor 50
Ancak, aşağıdaki beklendiği gibi çalışmaz:
bash-3.2$ sort -k2 -k1 <people.txt
Emily Bedford 18
James Bedford 21
Tony Bedford 50
Fred Bloggs 22
Pete Brown 37
Mark Brown 46
Francis Chepstow 56
Stefan Heinz 52
John Strange 51
Simon Strange 62
Ana Villamor 44
Alice Villamor 50
Soyadına ve sonra da ismine göre sıralamaya çalışıyordum, ama Villamorların doğru sırada olmadığını göreceksiniz. Soyadına göre sıralamayı umuyordum, sonra soyadları eşleştiğinde, ilk ada göre sıralamayı umuyordum.
Bunun nasıl çalışması gerektiğini anlamadığım bir şey var gibi görünüyor. Bunu başka bir yolla yapabilirim (awk kullanarak), ancak çeşitliliği anlamak istiyorum.
Mac OS X'te standart Bash kabuk kullanıyorum.