プロが教えるわが家の防犯対策術!

ログに時間が記載されています。
現在時刻から5分以内のものをgrep等のコマンドを利用し抽出することは可能でしょうか?
(シェルを利用する形になりますか?)
よろしくお願いします。

例:secure_log
May 30 20:41:14 linux sshd[26963]: Received disconnect from 10.0.0.1: 2: disconnected
by server request
May 30 20:51:40 linux sshd[27001]: Accepted password for linux from 10.0.0.1 port 3579
ssh2
May 30 20:53:42 linux sshd[27003]: Received disconnect from 10.0.0.1: 2: disconnected
by server request
May 31 08:39:10 linux sshd[27501]: Accepted password for linux from 10.32.27.98 port 1099 ss
h2

A 回答 (1件)

出来なくはないです。


たとえば実行時刻が 6/2 08:20 だとすると、
grep "^Jun 2 08:1[5-9]" とすれば実行できます。
雑プロ(一時的に統計を取りたいなどの理由でその場限りのプログラムを書くこと)ではこれでいいのではないでしょうか。

ただし、以下の点があるため、運用ベースではお勧めできません。
● シェル上での日付プログラミングを見たことがありますが、月や年・うるう年の処理を全部しなくてはいけない。
● どういう要件で5分としているのかわかりませんが(cronで5分単位で実行するのでしょうか)、5分が10分に変更しようとした場合、さらにテストが必要。

ほかの質問にもありましたが、そういう場合はログ監視ツールを使用してください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

>grep "^Jun 2 08:1[5-9]" とすれば実行できます。
>雑プロ(一時的に統計を取りたいなどの理由でその場限りのプログラムを書くこと)ではこれでいいのではないでしょうか。
なるほどぉ。確かにこのように設定を行えば、5分以内という形で抽出可能になりますね。

>● シェル上での日付プログラミングを見たことがありますが、月や年・うるう年の処理を全部しなくてはいけない。
年間を通して実行すると確かにそうならざるを得ないんですね。

● どういう要件で5分としているのかわかりませんが(cronで5分単位で実行するのでしょうか)、5分が10分に変更しようとした場合、さらにテストが必要。
>はい。cronにて実装する予定でした。
時間の変更を行えば、汎用性はございませんので、テストが必要となりますね。

ほかの質問にもありましたが、そういう場合はログ監視ツールを使用してください。
>はい。貴重なご意見ありがとうございました。

お礼日時:2006/06/02 10:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています