私はPowershellにかなり慣れていませんが、かなり興味深い問題があります。異なるIPアドレスを含むログファイルがあります。ログファイルの最大の部分は、ローカルホストで生成されたコンテンツです。
特定のローカルホストIPからのものではないすべてのエントリをフィルタリングしたいと思います。
正規表現でそれをどのように行うのですか、それともより洗練されたソリューションがありますか?
乾杯
私はPowershellにかなり慣れていませんが、かなり興味深い問題があります。異なるIPアドレスを含むログファイルがあります。ログファイルの最大の部分は、ローカルホストで生成されたコンテンツです。
特定のローカルホストIPからのものではないすべてのエントリをフィルタリングしたいと思います。
正規表現でそれをどのように行うのですか、それともより洗練されたソリューションがありますか?
乾杯
特定の ip を持つ行を選択するには、次を試してください。
get-content c:\mylogfile.log | select-string -pattern '192.168.1.100'
特定の IP のない行を選択するには:
get-content c:\mylogfile.log | ? { $_ -notmatch '192.168.1.100' }
部分的な ip はなくても、少なくとも ip がある行を選択するには、次を試してください。
get-content c:\mylogfile.log | ? { $_ -notmatch '192.168.1.100' } |
? { $_ -match '\b(?:\d{1,3}\.){3}\d{1,3}\b' }