0
は私が私がこのフィルターは、特定のカテゴリ
2017-06-13 11:47:05.121 [INFO] : Finished obj.clickButton('A1');
2017-06-13 11:47:05.137 [INFO] : Processing index 2432
2017-06-13 11:47:13.807 [INFO] : start=1497347223552 end=1497347233576
2017-06-13 11:47:13.827 [INFO] : start=1497347223552 end=1497347233576
2017-06-13 11:47:13.882 [INFO] : start=1497347223552 end=1497347233576
2017-06-13 11:47:14.695 [ERROR]: Caught exception waiting
STACK:org.openqa.selenium.WebDriverException: window.obj is undefined
Command duration or timeout: 367 milliseconds
2017-06-13 11:47:14.863 [INFO] : start=1497347234059 end=1497347234690
2017-06-13 11:47:15.192 [INFO] : start=1497347234059 end=1497347234690
2017-06-13 11:47:05.137 [INFO] : Processing index 2433
2017-06-13 11:47:15.192 [INFO] : start=1497347234059 end=1497347234690
のようなログファイルを減らすためにをsedを使用することができる方法を理解する助けてくださいSED ...レコードの2つだけのカテゴリが含まれているファイルに使用:
レコードの除数:
(^\d\d\d\d.\d\d.\d\d \d\d:\d\d:\d\d.\d\d\d)
カテゴリー1:(複数行の正規表現):
Caught exception.*timeout: (\d+) milliseconds
- 出力
\1 ms
(偶数タイムスタンプが
カテゴリ2である
Processing index
- 出力として必要ない)
期待される結果処理した後:
2017-06-13 11:47:05.137 [INFO] : Processing index 2432
367 ms
2017-06-13 11:47:05.137 [INFO] : Processing index 2433
を私は現在、唯一の基本的なは使い方(s/search/replace/opt
)をsedは、マニュアルを読んでもかかわらず、私は上記の効果とコマンドセット構成する方法がわからない知っています。
こんにちはエド、ありがとう。この場合、awkをどの程度効果的に使うことができるのか分かります。最後に、私はsedを使ってこの問題を解決しました。なぜなら、 'h'コマンドを使ってコンテキストを保持することが有益だからです。 (上の例では示されていません)私はあなたのawkの解決策をもう1つの質問で受け入れます:この例で 'milliseconds'を' ms'に変更することも同様に簡単ですか?私は単に '$ NF'を' 'ms ''?に置き換えるべきですか? – miroxlav
いいえ、 'h'やs、g、p以外のsed構造体を(決して-nと一緒に)使用しないでください。そうでないと、文字通りawkが1970年代半ばに廃止された構造体を使用しています。発明された。同等のawkソリューションは、より明確で、より効率的で、移植性が高く、保守性が向上し、他の意味のある方法で優れているため、ソフトウェアを真剣に書くのではなく、メンタルエクササイズのために今日他の構造を厳密に使用しています。はい、ミリ秒の代わりにmsを書くのは簡単ですが、入力にナノ秒、秒、分などが気になる唯一の単位ですか? –
「ミリ秒」を「ms」に変換する方法をいくつか追加しました。他のアプローチもありますが、それらのうちの1つが、私が思っているものである可能性が高い3です。 –