1

次のようなファイルがあります。

fan      apple banana orange mango
cooler   apple orange banana mango
cooler   apple orange banana mango
cooler   apple orange banana mango
fan      apple banana orange mango
fan      apple banana orange mango
cooler   apple orange banana mango
fan      apple banana orange mango

今、私が行ごとに行っているとき、ファンが来る瞬間にカウントしたいので、ファンごとにそのカウントを増やす必要があります。お気に入り

count 1
fan      apple banana orange mango
cooler   apple orange banana mango
cooler   apple orange banana mango
cooler   apple orange banana mango
count 2
fan      apple banana orange mango
count 3
fan      apple banana orange mango
cooler   apple orange banana mango
count 4
fan      apple banana orange mango

これは私が出力に欲しいものです。助けていただければ幸いです...ありがとう

4

2 に答える 2

1
#!/usr/bin/perl
use strict;
use warnings;

my $n = 0;
while (<>) {
    print "count ", ++$n, "\n" if /^fan\b/;
    print;
}

または Perl 5.10+ を使用したワンライナーとして:

perl -pE 'say "count ", ++$n if /^fan\b/'
于 2013-04-05T21:58:14.577 に答える
0

ワンライナーで:

perl -lane 'BEGIN{$c=1}; $F[0] eq "fan" && do{print "count ".$c++ }; print' file
于 2013-04-05T22:01:06.543 に答える