免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3176 | 回复: 12
打印 上一主题 下一主题

请教各位这个对比如何写 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-25 00:04 |只看该作者 |倒序浏览
一个文件中格式如下

a1          werewre
a23        gdffhgdf
b3          fdgdfgdfg
a3           lkgjfd
a86       fdgdfh
b23       gfdhfdh
a45       34kgfb
b1          twrqer
b86      fdsgdsg
b45       qfgsdgg

我想脚本获取变成
a1          werewre
b1          twrqer
a3           lkgjfd
b3          fdgdfgdfg
a23        gdffhgdf
b23       gfdhfdh
a45       34kgfb
b45       qfgsdgg
a86       fdgdfh
b86      fdsgdsg

论坛徽章:
0
2 [报告]
发表于 2010-01-25 07:50 |只看该作者
  1. awk '{split($1,m,"");v=$0;sub("^"m[1],"",$1);print m[1]","$1","v | "sort -t, -k2,2n -k1,1"}' file | awk -F, '{print $3}'
复制代码

论坛徽章:
0
3 [报告]
发表于 2010-01-25 08:39 |只看该作者
sed 's/^\([a-z]\)\([0-9]\)/\1 \2/' test | sort -n -k2 | sed 's/ //'

论坛徽章:
0
4 [报告]
发表于 2010-01-25 09:26 |只看该作者

回复 #2 ywlscpl 的帖子

您好,网上查了下split的用法,只是知道它是用来分割文件的,有-l 和 -b 两个参数。小弟新手,不明白这是什么意思

论坛徽章:
0
5 [报告]
发表于 2010-01-25 09:31 |只看该作者

回复 #4 aprilava 的帖子

split是awk的内部函数 可以按指定分隔符分割字符串为数组 split(字符串,数组名,分隔符)
数组形式为 数组名[1,2,3,4……]

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
6 [报告]
发表于 2010-01-25 09:33 |只看该作者

回复 #4 aprilava 的帖子

此split非彼split,参考十二篇:
http://bbs.chinaunix.net/thread-448687-1-1.html

使用split返回字符串数组元素个数。工作方式如下:如果有一字符串,包含一指定分隔符-,例如AD2-KP9-JU2-LP-1,将之划分成一个数组。使用split,指定分隔符及数组名。此例中,命令格式为("AD2-KP9-JU2-LP-1",parts_array,"-"),split然后返回数组下标数,这里结果为4。

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
7 [报告]
发表于 2010-01-25 10:02 |只看该作者

回复 #1 懒烊烊 的帖子

try:

sort -k1.2,1n urfile

论坛徽章:
0
8 [报告]
发表于 2010-01-25 10:24 |只看该作者

回复 #7 ly5066113 的帖子

这个真简单。。

论坛徽章:
0
9 [报告]
发表于 2010-01-25 10:44 |只看该作者

回复 #7 ly5066113 的帖子

终于又见到TIM 了 果然很强大

论坛徽章:
0
10 [报告]
发表于 2010-01-25 11:00 |只看该作者

回复 #7 ly5066113 的帖子

真是省力呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP