dahaoshanheunix 发表于 2012-03-03 16:11

弄了一天也没有找到原因 :( 为什么帖子发上去一会就没 不大一会就没 今天遇到20多次

本帖最后由 dahaoshanheunix 于 2012-03-03 18:59 编辑

为什么帖子发上去一会就没 不大一会就没 谁遇到过呀   

zhaopingzi 发表于 2012-03-03 16:14

难道你发了不和谐的帖子了

dahaoshanheunix 发表于 2012-03-03 16:17

不会吧 我就是把一个处理文件我写的代码放上交流一下应该和谐吧

dahaoshanheunix 发表于 2012-03-03 16:18

源文件:
63   63
74   74
82   82
95   95
96   96
99   99
97   97
98   98
100 100
114 114
123 123
135 135目的:在源文件中,每行有两列,两列数值相同,行与行之间有的增量为1,有的增量不为1,如第4行与第

5行增量为1,增量为1的行也可能不是紧邻连续着的,如第5行与第7行增量为1,但是不相邻连续的。想把一个几百万行的

文件中增量为1的行进行压缩,比如95到100之间增量都为1,压缩成95 100 第一列放连续递增中起始值,第二列放连续增

量结束值。63   63
74   74
82   82
95100
114 114
123 123
135 135{:3_205:}

awk 'BEGIN {
                SROW=2
                EROW=1540
                STARTR=0
                ENDR=0
                DELTA=0
      }
      {
                if(NR==SROW){
                        STARTR=$3
                        ENDR=$4
                }
                if(NR>SROW){
                        DELTA=$3-ENDR
                        if((DELTA==1)||(DELTA==0)) ENDR=$3
                        if(DELTA>1){
                              temp=$3
                              $3=STARTR
                              $4=ENDR
                              printf "%s\n",$0
                              STARTR=temp
                              ENDR=STARTR
                        }
                }
                if(NR==EROW){
                        $3=STARTR
                        printf "%s\n",$0
                }
      }'

dahaoshanheunix 发表于 2012-03-03 16:18

这个内容不和谐么?!:oops:

dahaoshanheunix 发表于 2012-03-03 16:19

我的用户名不和谐?~~:em21:

dahaoshanheunix 发表于 2012-03-03 16:21

你看 我才把我的帖子的内容贴到我的回复里面 又不大一会就没了

winway1988 发表于 2012-03-03 16:21

貌似真的耶,我看到lz发的内容,一会没了

zooyo 发表于 2012-03-03 16:27

dahaoshanheunix 发表于 2012-03-03 17:33

才又发了一下 不大一会又没了   
源文件:
63   63
74   74
82   82
95   95
96   96
99   99
97   97
98   98
100 100
114 114
123 123
135 135目的:在源文件中,每行有两列,两列数值相同,行与行之间有的增量为1,有的增量不为1,如第4行与第

5行增量为1,增量为1的行也可能不是紧邻连续着的,如第5行与第7行增量为1,但是不相邻连续的。想把一个几百万行的

文件中增量为1的行进行压缩,比如95到100之间增量都为1,压缩成95 100 第一列放连续递增中起始值,第二列放连续增

量结束值。63   63
74   74
82   82
95100
114 114
123 123
135 135{:3_205:}

我的 :awk 'BEGIN {
                SROW=2
                EROW=1540
                STARTR=0
                ENDR=0
                DELTA=0
      }
      {
                if(NR==SROW){
                        STARTR=$3
                        ENDR=$4
                }
                if(NR>SROW){
                        DELTA=$3-ENDR
                        if((DELTA==1)||(DELTA==0)) ENDR=$3
                        if(DELTA>1){
                              temp=$3
                              $3=STARTR
                              $4=ENDR
                              printf "%s\n",$0
                              STARTR=temp
                              ENDR=STARTR
                        }
                }
                if(NR==EROW){
                        $3=STARTR
                        printf "%s\n",$0
                }
      }'
页: [1] 2 3
查看完整版本: 弄了一天也没有找到原因 :( 为什么帖子发上去一会就没 不大一会就没 今天遇到20多次