grepを使用したパラメータの強調表示

grepを使用したパラメータの強調表示

Bashのハイライト機能を使用するのに役立ちます。

私の目標は、3つのパラメータを特定し、それを3つの異なる色で強調表示することです。私はこれをやってきましたが、これを行う方法について頭を閉じることはできません。

頑張った

入力する:

user@syslog:~$ grep --color=always Dwhite VPNsyslog-2016 | grep --color date | grep --color time

出力:

結果は強調表示され、Dwhite時間と日付は何らかの理由で強調表示されません。これらはすべて赤で強調表示されます。

私も試しました

user@syslog:~$ GREP_COLORS='mt=01;32' grep Dwhite VPNsyslog-2016| GREP_COLORS='mt=01;31' grep date VPNsyslog-2016 | GREP_COLORS='mt=01;34' time VPNsyslog-2016 

出力:

何もありません。

文法がすべて誇張された場合でもご了承ください。私はこの分野について非常に見知らぬ人であり、プログラマーでもありません。私はシステムログを見やすくするネットワーク管理者です。

ベストアンサー1

grep -E --color=always 'Dwhite|date|time' VPNsyslog-2016

同じコマンドで異なる一致の異なる色はサポートされていません。パイプラインで互いに接続するのはgrep事実上AND演算です(したがって、3つのパターンすべてに一致する行のみが出力され、最終パターンのみが強調表示されます)。

より設定可能なログファイルを強調表示したい場合は、特別なツールを使用する必要があります。西沢ブロックするあやお色素沈着または強調する(他の中から)。これらはすべてLinuxディストリビューション用にすでにパッケージ化されています(もちろん、DebianやUbuntuなどのDebian派生製品にもあります)。

おすすめ記事