非常感谢,原来看到了才知道这么简单,而自己怎么都想不出来,受教了。
在 2012年4月25日 上午11:53,Robin Lee <[email protected]>写道: > my %line_count; > while (<>) { > $line_count{$_}++; > } > > while (my ($line, $count) = each %line_count) { > print "$count: $line" if $count > 1; > > } > > On Wed, Apr 25, 2012 at 11:51 AM, 李 ��(Zhen Li) <[email protected]> wrote: > >> 用perl处理, >> 举个例子, >> 你可以准备一个hash,带2个key, >> 一个key (line)记录每一行的内容,一个key (count)记录该行出现的次数。 >> >> 然后,把文件每一行,记录到hash里面, >> 记录的时侯,如果行的内容重复,则该行的次数++。 >> >> 这样,当文件全部带入到hash之后, >> 你只需要打印出key(count)大于1的key(line)的value即可。 >> 如何? >> >> 2012/4/25 Gary Jsz <[email protected]> >> >>> >>> 我想使用perl的逻辑来处理,比如先读取文件的第一行,然后和后面几行比较,如果有相同,打印,如果没有相同的,那么读取第二行,再与后面的几行比较,以此类推,直到最后。 >>> >>> 但是,这个逻辑我不会做。 >>> >>> 在 2012年4月25日 上午10:52,Simon Xu <[email protected]>写道: >>> >>> sort file | uniq -cd >>>> >>>> 2012/4/25 Gary Jsz <[email protected]> >>>> >>>>> 大家好! >>>>> >>>>> 我有一个文本,内容如下: >>>>> china abc unix https://www.linuxsir.org >>>>> AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY >>>>> LC_MESSAGES >>>>> AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT >>>>> AcceptEnv LC_IDENTIFICATION LC_ALL >>>>> >>>>> # Example of overriding settings on a per-user basis >>>>> #Match User anoncvs >>>>> # X11Forwarding no >>>>> # AllowTcpForwarding no >>>>> # ForceCommand cvs server >>>>> AcceptEnv LC_IDENTIFICATION LC_ALL >>>>> china abc unix https://www.linuxsir.org >>>>> >>>>> 我想查找这个文本的内容是否有重复行,如果有,就打印出来,并标注有几条重复的。 >>>>> >>>>> 这个应该如何来做? >>>>> >>>>> -- >>>>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >>>>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >>>>> 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 >>>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >>>>> >>>> >>>> -- >>>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >>>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >>>> 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 >>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >>>> >>> >>> >>> >>> -- >>> [email protected] >>> >>> -- >>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >>> 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 >>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >>> >> >> >> >> -- >> +++++++_++++++++ >> 李 镇 >> DeNA China 智能手机事业部 >> (86-21-6267-6611-137) >> >> 大家一起来玩[梦宝谷]吧! >> http://mobage.cn <http://mobage.com.cn> >> >> ++++++ *-* +++++++ >> >> -- >> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >> 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 >> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >> > > -- > 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 > 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 > 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 > 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 > -- [email protected] -- 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
