grepがここで別の行で始まる「ほぼ」重複行を表示するのはなぜですか?

grepがここで別の行で始まる「ほぼ」重複行を表示するのはなぜですか?

複数のサブディレクトリを含むディレクトリでこのgrepコマンドを実行しています。

grep -rn 'AlertManager.ShowAlert'

これはうまくいきますが、すべての結果が重複していることがわかりました。最初の結果セットには「=」の後に数字(おそらくチェックしたすべての行の累積合計?)があり、2番目の結果セットには私が望む結果があり、ファイルのフルパスとファイルの行番号が表示されます。 。

「=:#####」結果の最初のセットを取得するのはなぜですか。これらの結果を表示しない可能性がありますか?

最初のグループ:

=:15625:gui/alertmanager.gui:72:            visible = "[And(AlertManager.HasCallForPeace, AlertManager.ShowAlert('call_for_peace'))]"
=:15628:gui/alertmanager.gui:94:            visible = "[And(AlertManager.HasTrueWar, AlertManager.ShowAlert('war'))]"

... middle cut for brevity ... 

2番目のセットが始まります(比較のために最初のセットの最後の行を保持しました)。

=:15787:gui/alertmanager.gui:1180:          visible = "[And(AlertManager.HasGreatWorkWithUpgradableEffects, AlertManager.ShowAlert('gw_with_upgrades'))]"
gui/alertmanager.gui:72:            visible = "[And(AlertManager.HasCallForPeace, AlertManager.ShowAlert('call_for_peace'))]"
gui/alertmanager.gui:94:            visible = "[And(AlertManager.HasTrueWar, AlertManager.ShowAlert('war'))]"

ベストアンサー1

上記のいくつかの有用なコメントを聞いた後、これが私の間違いだったことがわかりました!

同じ内容を含んでいる「=」というファイルがあります!変ですね。 grepがすることだと思いましたがそうではありませんね。

だから私の「答え」は、grepがその特定のファイルをスキップすることです。

おすすめ記事