我在bash脚本中使用sort来订购生成的文件。输入文件的示例是:
2,0,2165,5
2,-10,2122,5
2,10,2830,6
2,-11,2121,5
2,11,2903,6
2,-1,2151,5
2,1,2171,5
2,-12,2114,5
2,-13,2118,5
2,-14,2121,5
2,-2,2144,5
2,2,2199,5
我需要对第一个数字进行排序,然后是第二个,我尝试了以下内容:
sort -k1,1n -k2,2n data
正数按要求排序,但负数是按字典排序的:
2,-10,2122,5
2,-11,2121,5
2,-1,2151,5
2,-12,2114,5
2,-13,2118,5
2,-14,2121,5
2,-2,2144,5
2,0,2165,5
2,1,2171,5
2,2,2199,5
2,10,2830,6
2,11,2903,6
有人可以帮忙解决这个问题吗?
答案 0 :(得分:4)
sort -t, -k1,1n -k2,2n nums
2,-14,2121,5
2,-13,2118,5
2,-12,2114,5
2,-11,2121,5
2,-10,2122,5
2,-2,2144,5
2,-1,2151,5
2,0,2165,5
2,1,2171,5
2,2,2199,5
2,10,2830,6
2,11,2903,6
你需要告诉排序分隔符,它在这里工作。