こんにちは
KSH私はこの問題を解決しようとしてこだわっていると誰かがいくつかのアドバイスを提供していただきたいと思う。
既知のエラーのリストを表示するためには、エラーエントリを比較するために私は大のたくさん読むことができます。 gzを解凍したいファイルを一度に1行。 gzcat *. gzを解凍| $はgrep (エラー) "はどうすればよいだけ" foreachのエラーはできないでしょうから私は、日中にそれぞれの既知のエラーとは、時間ごとに1つの大きなログファイルを解析する必要があります。ログを解析するので、一度だけ、それぞれの行を読むと、ファイルは、エラーを比較し、各エラーの増加はエラーカウントです。私は一から一度に。 gzを解凍ファイルの1行の処理については一部を除き、この操作を行うには、ほとんど知っている。
私はこのようなものとなったが、仕事ではない。これは、代わりに、ファイル内のすべての行のoutputing :
コード:
while read file_line
do
ERROR=`grep ^ERROR ${file_line}`
print ${ERROR}
done < `gzcat 080803.gz`
これは、出てくるのは、出力されます。が必要出力のみのエラーで始まる行は、監査などのすべての行を示している。私は、エラーの行をします。改行がないとされています。
監査; WebContainer : 2008年8月4日00:11:51,554 ; com.at.commons : A_EndRequest -完了のトランザクションのためのURIのための対応を準備/ docroot / ' 337ミリ秒では一般的。 JAUDIT ^ ; WebContainer : 2008年8月4日00:11:58,885 ; com.at.commons : A_BeginRequest - URIのためのトランザクションに対して受信要求' / docroot /共通' 。 JAUDIT ^ ; WebContainer : 20-08-08-04 00:11:59,136 ; com.at.commons : A_EndRequest -完了のトランザクションのためのURIのための対応を準備/ docroot / ' 251msでは一般的。 JAUDIT ^ ; WebContainer : 2008年8月4日00:12:08,686 ; com.at.commons : A_BeginRequest -トランザクションを受け取ったリクエストURI ' / docroot /共通' 。 JAUDIT ^ ; WebContainer : 2008年8月4日00:12:09,078 ; com.at.commons : A_EndRequest -完了のトランザクションのためのURIのための対応を準備/ docroot / ' 392ミリ秒では一般的。 :を開くことができません
私はこのように見えるの代わりに出力する:
エラー; WebContainer : 2008年8月3日04:33:45,787 ; com.models.userlist.query : E_AggregationError
エラー; WebContainer : 2008年8月3日04:33:59,930 ; com.models.userlist.query : E_AggregationError
エラー; WebContainer : 2008年8月3日04:34:31,751 ; com.app.cdmeng.combination : E_marshalException
何がおかしいのですか?どのような援助がいただければ幸いです。
ありがとう。