linux 中awk命令实现按照 指定的字符对文本进行排序

 

001、

复制代码
[root@PC1 test1]# ls
a.txt
[root@PC1 test1]# cat a.txt        ## 测试数据,对如下文本按照a、b进行排序输出
01      02b     03      04
05      06a     07      08
09      10b     11      12
13      14b     15      16
17      18a     19      20
[root@PC1 test1]# awk '{if($0 ~ /a/) {ay1[NR] = $0} else {ay2[NR] = $0}}END{for(i in ay1) {print ay1[i]}; for(i in ay2) {print ay2[i]}}' a.txt
17      18a     19      20
05      06a     07      08
13      14b     15      16
01      02b     03      04
09      10b     11      12
复制代码

 

002、

复制代码
[root@PC1 test1]# ls
a.txt
[root@PC1 test1]# cat a.txt                     ## 如果数据整齐,可用sort排序
01      02b     03      04
05      06a     07      08
09      10b     11      12
13      14b     15      16
17      18a     19      20
[root@PC1 test1]# sort -t $'\t' -k 2.3,2.3 a.txt
05      06a     07      08
17      18a     19      20
01      02b     03      04
09      10b     11      12
13      14b     15      16
复制代码

 。

 

posted @   小鲨鱼2018  阅读(23)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2023-11-06 linux 中查看GNU c库版本 libc.so.6(GLIBC版本)
2023-11-06 configure: error: You need zlib >= 1.2.3 to build bin/PopLDdecay
2023-11-06 conda 升级到最新版本
2023-11-06 centos7 中 安装 rmblast 软件
2022-11-06 python中os模块下路径的常见操作
2021-11-06 docker pull越来越慢的解决方法
2021-11-06 Vmware虚拟机和docker在win10上不兼容的处理
点击右上角即可分享
微信分享提示