複数のサブディレクトリを含むディレクトリでこの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がその特定のファイルをスキップすることです。