linux - 根据列对一组数据进行排序

标签 linux sorting

我有一个包含以下数据的输入文件:

1 2 3 4
  4   6
  8   9
      10
2 1 5 7
  3
3 4 2 9
  2   7
      11

我正在尝试根据第三列排序这组数据并得到这样的输出:

2 1 5 7
  3
1 2 3 4
  4   6
  8   9 
      10
3 4 2 9
  2   7
      11

你能告诉我怎么做吗?

最佳答案

sort -nk3r

将根据第 3 列以相反的顺序排序。但是请注意,这会输出

2 1 5 7
1 2 3 4
3 4 2 9
      10
      11
  2   7
  3
  4   6
  8   9

由于 bash 排序功能的方式,这会产生与您发布的输出不同的结果,但根据问题进行更正。

关于linux - 根据列对一组数据进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30691460/

相关文章:

linux - 将 Ctrl+C 发送到 strace 导致目标进程的写入系统调用失败,返回 "interrupted system call"

c++ - 另一个时区的日期 : C++ on Linux

c++ - 无需 super 用户即可更改文件权限

algorithm - 将项目集合分类到桶中的最有效方法是什么?

javascript - 根据另一个数组中的位置仅对数组的某些元素进行排序

java - 堆排序问题

linux - 我如何在 Linux 中的特定文件中创建 cron 作业

c++ - 不同步读写SysV共享内存(使用信号量,C/C++,Linux)

arrays - 对数组进行排序,使元素 a[i]-a[i+1]<=a[i+1]-a[i+2] 的差值

linux - Sort numbers values - separated by a dot or any other separator character - 在 RHEL5 中排序版本值