単語の出現(「パージ」)のログファイルを監視しようとしています。 行(コマンド実行時)に一致する最後の10個のを表示し、基準に一致する新しく追加された行をファイルで監視し続けたいとします。Powershell:条件に一致するログの最後のX行を表示し、ファイルを監視し続ける
get-content .\CallAudit.Engine.log -tail 10 -Wait | where {$_ -match "Purge"}
これは動作しますが、それは(任意の)最後の10行を取得するだけにしてフィルタを適用します。
はこれまでのところ、私はPowerShellのでの作業何かを得ました。
- に私が欲しい
最後の10行
- に一致するだけコマンドは、ファイルを見続ける必要があります。
これはできますか?あなたのpurge
-filterが実行されているので、それが最後の10行を(またはpurge
を含んでも含まなくてもよい)読んだ後
非常に「常識」に見えます。結果の2つのリストを連結して、これを「1ライナー」にする方法はありますか? –
なぜですか?アイデアは、簡単なことを達成するために複雑すぎる 'どこ/' foreach'ループを避けるために最初にそれらを分割することでした。読みやすさは常に優先されるべきです。 :-)本当に1行に必要な場合は、最初の行の後に ';'を付けて現在のコマンド/行を終了し、行を結合します。 Ex .. 'get-content .. |どこに.. | -last 10を選択します。取得コンテンツ-wait |どこですか.... ' –
なぜ?なぜなら私は構文について興味があるからです。 –