免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: hfzheng
打印 上一主题 下一主题

搜索文件中相同字段行,并进行处理,如何做?  关闭 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2003-01-17 23:11 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

我还是想怎么使用了awk之后行顺序会改变呢,原来是这么回事。太感谢红袖添香了。

论坛徽章:
0
12 [报告]
发表于 2003-01-18 00:45 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

...


行了,这样子就可以了。既求了和,也按原文件顺序排列(i hope so...)


  1. awk ''
  2.    BEGIN {n=0}
  3.    {
  4.        if ( length(def[$1]) == 0 ) def[$1]=$2
  5.        sum[$1]+=$3
  6.        if ( $1 in ind ) next
  7.        ind[$1]
  8.        key[n] = $1
  9.        n++
  10.    } END {
  11.        for ( i=0; i<n; i++ )
  12.        print key[i], def[key[i]], sum[key[i]]
  13. }'' aa
复制代码

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
13 [报告]
发表于 2003-01-18 02:35 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

哎,大师兄,俺在SOALRIS7, KSH运行总是报错

awk: syntax error near line 6
awk: illegal statement near line 6

是SHELL不同的原因吗?

论坛徽章:
0
14 [报告]
发表于 2003-01-18 02:54 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

...


呵呵,Solaris 下,你得用 nawk 就行了。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
15 [报告]
发表于 2003-01-18 03:01 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

真神啊!

论坛徽章:
0
16 [报告]
发表于 2003-01-18 09:21 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

想不到红袖兄对awk有这样的造诣,佩服佩服真佩服,学习学习再学习,努力努力要努力!!!!

论坛徽章:
0
17 [报告]
发表于 2003-01-18 19:31 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

我也要向各位大侠学习,真是太厉害了。佩服佩服

论坛徽章:
0
18 [报告]
发表于 2003-01-19 02:04 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

[quote]原帖由 "GM"]想不到红袖兄对awk有这样的造诣,佩服佩服真佩服,学习学习再学习,努力努力要努力!!!![/quote 发表:



hehe,where, where...

论坛徽章:
0
19 [报告]
发表于 2003-01-20 10:15 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

if ( $1 in ind ) next
       ind[$1]
       key[n] = $1
       n++
能不能帮忙解释这段代码的意思? ind代表什么?是不是index?

论坛徽章:
0
20 [报告]
发表于 2003-01-20 19:58 |只看该作者

搜索文件中相同字段行,并进行处理,如何做?

...

我想这个应该很好理解吧~

ind 表示 index, 因为 index 是 awk 的保留字,所以就用了这个名字。

if ( $1 in ind ) next  表示 如果发现 ind 这个数组中已经有 $1 了,就跳过,取下一个记录。所以比如当第一栏第2次,第3次出现123时,就不会归到 ind 这个数组中去了。

不重复的$1将会保存在key[n]中。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP