非常感谢,原来看到了才知道这么简单,而自己怎么都想不出来,受教了。

在 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 访问此网上论坛。

回复