linux sort多字段排序实例解析

 更新时间:2018年02月09日 14:14:04   作者:abcd1f2  
这篇文章主要介绍了linux sort多字段排序实例解析,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下

本文研究的主要是linux sort多字段排序,具体介绍如下。

Linux多数发行版自带的sort程序,非常强大,在此只说多字段排序

sort 有个参数-k,可以指定字段,有比较复杂的语法,不在文本范围内。

一下为一段数据(从基因中得到,仅仅作为demo),文件名为 data

chr13 3008566 3008677
chr9 3024384 3024515
chr19 3157071 3157172
chr5 3236386 3236476
chr13 3041044 3041191
chr12 3045343 3045532
chr6 3087308 3087625
chr5 3109870 3110091
chr9 3115454 3115531

字段中间以空格分开

现在想首先按照染色体进行排序,然后相同的染色体上的基因按起始位点进行排序,那么这就是一个多字段的排序,而且第二个字段为数字,使用sort命令如下

sort -t ' ' -k1,1 -k2n,2 data

其中 -t ' ' 指定使用空格分列

  • -k1,1 指定以第一列为关键字排序
  • -k2n,2 指定以第二列为关键字做数据排序

也可以使用

sort +0 -1 +1n -2

效果是一样的。

排序结果

chr12 3045343 3045532
chr13 3008566 3008677
chr13 3041044 3041191
chr19 3157071 3157172
chr5 3109870 3110091
chr5 3236386 3236476
chr6 3087308 3087625
chr9 3024384 3024515
chr9 3115454 3115531

总结

以上就是本文关于linux sort多字段排序实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

  • centos 6.5下修改SSH端口及禁用root远程登录的方法

    centos 6.5下修改SSH端口及禁用root远程登录的方法

    Linux各发行版中SSH端口默认为22,如果正式做站或其它用途,为了提高安全性就需要修改掉默认的SSH端口号,防止被有心人穷举密码。这篇文章主要给大家介绍了在centos 6.5系统下修改SSH端口及禁用root远程登录的方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • CentOS7环境搭建python3以及与python2实现共存的方法

    CentOS7环境搭建python3以及与python2实现共存的方法

    这篇文章主要介绍了CentOS7环境搭建python3以及与python2实现共存的方法,结合实例形式简单分析了CentOS7环境下安装Python3的步骤、命令及测试代码示例,非常简单易懂,需要的朋友可以参考下
    2018-06-06
  • 利用logsave如何将命令输出保存起来

    利用logsave如何将命令输出保存起来

    logsave命令运行给定的命令,并将命令的输出信息保存到指定的日志文件中。下面这篇文章主要给大家介绍了关于利用logsave如何将命令输出保存起来的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-05-05
  • 关于Read-only file system问题的解决

    关于Read-only file system问题的解决

    这篇文章主要介绍了关于Read-only file system问题的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 详解如何在Linux中检查和设置时区

    详解如何在Linux中检查和设置时区

    时区是地球上的一部分,其中的时间被认为是相同的,每个时区都有一个基准点,其时间被认为是“标准时间”,在 Linux 系统中,时区通常存储在 /usr/share/zoneinfo/ 目录中,本文给大家介绍了如何在Linux中检查和设置时区,需要的朋友可以参考下
    2024-06-06
  • 在 CentOS 8 上安装Jenkins的方法

    在 CentOS 8 上安装Jenkins的方法

    这篇文章主要介绍了在 CentOS 8 上安装Jenkins的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • linux实现自动部署tomcat脚本

    linux实现自动部署tomcat脚本

    这篇文章主要为大家详细介绍了linux实现自动部署tomcat的脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Linux下Redis设置密码及开机自启动

    Linux下Redis设置密码及开机自启动

    这篇文章主要介绍了Linux下Redis设置密码及开机自启动的相关资料,需要的朋友可以参考下
    2016-12-12
  • 在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器的教程

    在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器的教程

    RTMP流媒体协议是 一套 Adobe 开发的音频视频实时传输协议;nginx-rtmp 是一个基于nginx的 RTMP服务模块,开源,免费,接下来通过本文给大家介绍在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器,需要的朋友可以参考下
    2019-11-11
  • 超详细讲解Linux DHCP服务

    超详细讲解Linux DHCP服务

    这篇文章主要介绍了Linux DHCP 服务,它可以避免IP地址冲突,提高了IP地址的利用率等优点。感兴趣的小伙伴一起来学习吧
    2021-08-08

最新评论