2017-03-05 9 views
0

申し訳ありませんが、質問が重複していたら、私はここで新しく、このシステムを使うことを学んでいます。awkログをテールの中に保存した後のコマンド

私は以下のコマンドを使用して、varialvel文字列でヒットしたIPをログに保存します。

このIPをログファイルに保存した後、squid再構成コマンドを実行すると、「squid -k reconfigure」を実行して、squidを再構成し、そのIPをキャプチャしてログにスローします。

誰かが私を助けることができますか?

 
#!/bin/sh

TAIL="/usr/bin/tail -f"
SQUID="/var/log/squid/access.log"
SQUID2="/usr/sbin/squid -k reconfigure"
PRINCIPAL2="http://cartilha.cert.br/"
LOG="/var/corples/pagina-inicial/autenticados.txt"

$TAIL $SQUID | gawk -v var2=$PRINCIPAL2 '{if ($7 == var2) {print $3} fflush()}' >> $LOG
+0

あなたの答えが「受け入れ済み」であることを忘れないでください。 – eewanco

答えて

1

あなたが試してみました:

$TAIL $SQUID | gawk -v var2=$PRINCIPAL2 '{if ($7 == var2) {print $3; fflush(); system("/usr/sbin/squid -k reconfigure")}' >> $LOG 

をしかしHow to 'grep' a continuous stream?確認してください。システムがこれを行うように設定されている場合は、ログがローテーションしたときに何が起きるかを考慮してください。

関連する問題