如何检查文件是否在 unix 中的第 n 列排序?

how to check if a file is sorted on nth column in unix?

假设我有一个文件如下:(逗号分隔)

cat test.csv
Rohit,India
Rahul,India
Surya Kumar,India
Shreyas Iyer,India
Ravindra Jadeja India
Rishabh Pant India
zzabc,abc

现在我想检查上面的文件是否排在第 02 列。 我尝试了命令 sort -ct"," -k2,2 test.csv 我期待它在最后一行说混乱,但它在第 02 行给我混乱。 谁能告诉我这里出了什么问题?以及如何获得预期的输出?

不保证排序稳定。但是 sort 的某些实现支持将强制执行的选项。尝试添加 -s:

sort -sc -t, -k2,2 test.csv

但请注意,我希望第一个乱序行是 Ravindra Jadeja India,因为该行的第二个字段是空字符串,应该排在“India”之前。