免费注册 查看新帖 |

Chinaunix

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

请教:如何去除重复字段 [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
11 [报告]
发表于 2007-05-16 11:45 |只看该作者
换过来也一样

[root@fang-test bin]# sort -t,-k2r temp1 |awk -F,'! a[$1]++'
sort: multi-character tab `,-k2r'
Usage: awk [POSIX or GNU style options] -f progfile [--] file ...
Usage: awk [POSIX or GNU style options] [--] 'program' file ...
POSIX options:          GNU long options:
        -f progfile             --file=progfile
        -F fs                   --field-separator=fs
        -v var=val              --assign=var=val
        -m[fr] val
        -W compat               --compat
        -W copyleft             --copyleft
        -W copyright            --copyright
        -W dump-variables[=file]        --dump-variables[=file]
        -W gen-po               --gen-po
        -W help                 --help
        -W lint[=fatal]         --lint[=fatal]
        -W lint-old             --lint-old
        -W non-decimal-data     --non-decimal-data
        -W profile[=file]       --profile[=file]
        -W posix                --posix
        -W re-interval          --re-interval
        -W source=program-text  --source=program-text
        -W traditional          --traditional
        -W usage                --usage
        -W version              --version

To report bugs, see node `Bugs' in `gawk.info', which is
section `Reporting Problems and Bugs' in the printed version.

gawk is a pattern scanning and processing language.
By default it reads standard input and writes standard output.

Examples:
        gawk '{ sum += $1 }; END { print sum }' file
        gawk -F: '{ print $1 }' /etc/passwd

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
12 [报告]
发表于 2007-05-16 12:12 |只看该作者
-t,-k2r
-t, -k2r

请仔细比较并建议读新手导航

论坛徽章:
0
13 [报告]
发表于 2007-05-16 17:27 |只看该作者
awk -F, '! a[$1]++'
楼上的只说了实现HASH以¥$1作为关键字但是这个语法看不明白能否请明白的讲一下

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
14 [报告]
发表于 2007-05-16 20:46 |只看该作者
!a[$1]{print $0}
a[$1]=a[$1]+1
分成这两句能看明白么?

论坛徽章:
0
15 [报告]
发表于 2007-05-17 09:20 |只看该作者
!a[$1]{print $0}
a[$1]=a[$1]+1
分成这两句能看明白么?
对不起我还是不明白 a是什么啊?$1是abdc@sina.com吗?那a[abdc@sina.com]又是什么东西,数组什么时候是真什么时候是FALSE啊?怎么控制print的?

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
16 [报告]
发表于 2007-05-17 09:34 |只看该作者
新手导航里有awk基础教程

论坛徽章:
0
17 [报告]
发表于 2007-05-17 11:35 |只看该作者
谢谢斑竹提醒我已经明白了,awk -F, '! a[$1]++' ,a[$1]不同于c语言中的a[1],a[2]什么的,$1同样作为下标初始值为0,!0=1打印了第一次出现的值,++变为1,2,3,... ,!TRUE=0遇到后面的就不打印了,至于打印所有的($1 $2)为AWK对于只匹配的做法缺省打印$0,不知道我的理解对否

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
18 [报告]
发表于 2007-05-17 12:06 |只看该作者
恭喜!你已经会抢答了

论坛徽章:
0
19 [报告]
发表于 2007-05-17 16:15 |只看该作者
看来我还是和好学的^_^

论坛徽章:
0
20 [报告]
发表于 2008-04-30 17:16 |只看该作者

帮忙看看了

Time: 2008-04-30-16.44.20.730554  Message Level:Severe
RETCODE:11111111111111111|sdfasdfasfasdf, SQL
          "External Comm error"

Time: 2008-04-30-16.49.42.910798  Message Level:Severe
RETCODE:11111111111111111|sdfasdfasfasdf, SQL
          "External Comm error"

Time: 2008-04-30-16.55.05.067819  Message Level:Severe
RETCODE:11111111111111111|sdfasdfasfasdf, SQL
          "External Comm error"

Time: 2008-04-30-17.00.27.142737  Message Level:Severe
RETCODE:11111111111111111|sdfasdfasfasdf, SQL
          "External Comm error"

Time: 2008-04-30-16.55.05.067819  Message Level:warn
MES:22222222222222222222222222|sdfasdfasfasdf, osmes
          "External Comm error"

Time: 2008-04-30-17.00.27.142737  Message Level:warn
MES:22222222222222222222222222|sdfasdfasfasdf, osmes
          "External Comm error"

要求 把RETCODE: 或是MES:有重复的给删除;;;;;;;;;;;Time: 的信息 可以使用任意一个字段的信息
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP