"usb 1-3"と "address 20"の2つの値があります。今私は、これらの単語の両方を持つテキストファイル(基本的にログファイル)を検索しようとしています。Linuxで2番目に出現した単語の行を取得する
は今、そのファイルが、これらの言葉で多くの行を持っている:私はこれら二つの言葉の最後から2番目の発生と行を取得したいし、次の16:
Apr 27 13:30:55 box2 kernel: usb 1-3: USB disconnect, address 20
and
Apr 27 13:25:43 box2 kernel: usb 1-3: new high speed USB device using ehci_hcd and address 20
今私の要件は、ということですそれ以降の行。ファイル内に6つのオカレンスがある場合(この2つの単語の両方が6行の場合)、5番目のオカレンスとそれに続く16番目のラインが必要です。 10回の出現がある場合は、9回目の出現と次の16回の出現が必要です。
は、現在、私は
egrep -A 20 'usb 1-3:.*address 20' filename | tail -16 > output.
を使用していたが、それは私の最後の出現を与えます。最後まで2番目ではありません。私の質問が明確でないかどうか教えてください。 私の質問がはっきりしない場合は教えてください。前もって感謝します。
"ユーザー不明" 私はあなたが実質的に変化したと思うし、質問を誤解。 http://stackoverflow.com/posts/10358234/revisions –
私は物質を変更することなく質問を明確にすることに亀裂を入れました。 –
あなたの努力をお寄せいただきありがとうございます。 – user115079