|
はじめまして。 よろしくお願いいたします。 現在HP-UX11.00、Bシェルでログの監視ツールを作っています。 早速質問させていただきたいのですが、 たとえば、以下のようなログがあったとします。 ------------------------------------------ 1:I have a error. You have a worning. 2:I have a worning. You have a error. ------------------------------------------ 変数にワイルドカードを使用して ------------------------------------------ pattern="*error*worning*" ------------------------------------------ とパターン定義しておいて、ログファイルを一行ずつ読み込み この場合ですと、一行目のみ出力させるということは可能でしょうか? 現在 ------------------------------------------ message=`echo $line | sed -n /$pattern/p` if [ "x$message" = "x" ] ; then exit 0 else echo $message exit 1 fi #($lineはログファイルの読み取り行) ------------------------------------------ というようなことが、やりたいのですが、うまくいきません。 ご教授のほどお願いいたします。 |
|
>>3936 一人 こんな感じでどうですか? ------ awk 'BEGIN { FS=","; dummy=""; } { if ( $1 != dummy ) { if ( NR > 1 ) printf "\n"; printf "%s,%s",$1,$3; dummy=$1 } else { printf ",%s",$3 } } END { printf "\n"; }' infile ------ >>3939 カトウ pattern='.*error.*worning.*' では駄目ですか? |
|
>>3940 zsh ありがとうございます。 上手くいきました。 こんな簡単な方法でできるのですね。 考えすぎですね。 |
|
>>3935 TSURU > sendmail を久しぶりにコンパイルしようとしたのですが、以下のような > メッセージが大量に出力されてしまい、コンパイルできません。 http://mm.apache.or.jp/pipermail/apache98-99/1999-August/001431.html のスレッドを参考にしてください。 gcc をインストールしなおさないといけないのか、PATH の設定次第で何とか なるものなのかはわかりません。 > コンパイラが古いとコンパイルできなくなるということはあるのでしょうか? あります。しかし今回は環境の問題でしょう。 >>3939 カトウ > message=`echo $line | sed -n /$pattern/p` 質問内容とは関係ありませんが、$line にワイルドカードなどが入っていると シェルが展開してしまうので、ログ内容をシェル変数に格納するやり方はお勧め しません。 |
|
始めまして、こんにちは。 UNIX講習を受けてから5年以上も経つのに、ほとんど初心者です。 基本的な質問ですみません。 tar xvf *.tar で展開して、ファイル情報を表示させたとき、 その内容をファイルに落とすにはどうしたらいいでしょうか? この展開ですべてのファイルがきちんと展開されたか確認したいのです。 (実は1つだけ展開されていない・・・) 本当に、基本的な質問ですみません。 よろしくお願いいたします。 |
|
初めまして。ポチ公と申します。 ネットワークの勉強中ですがちょっと質問があります。 今、httpの仕組みを勉強中でこちらのサイトにたどり着きました。 以下のページで公開されているtcpdump-filter.plで ttp://x68000.q-e-d.net/~68user/net/tcpdump.html 書かれていたとおりに実行して 見事パケットが整形されて表示されました。 以下のようなコマンドです。 tcpdump -l -s 1600 -x -i lo0 | tcpdump-filter.pl | grep http >> packet.txt xxx.com/ HTTP/1.0 Accept: image/gif, image/x-xbitmap, xxx.com/ HTTP/1.0 Accept: image/gif, image/x-xbitmap, xxx.com/ HTTP/1.0 Accept: image/gif, image/x-xbitmap, zation Required ... それで思ったのですが、どうもログを見ると 先頭の3行くらいが全て省略されているようでした。 環境はredhat9/perl5.8です。 何故、先頭の数文字が省略されているのが 疑問でしたので、投稿してみました。 もし何か解りましたら教えて頂けたら幸いです。 宜しくお願いします。 |