2秒ごとにufw.logファイルでBLOCKという単語を追跡したいと思います。
私は次のコマンドを試してみます:
sudo watch BLOCK /var/log/ufw.log
しかし、私は次のようになります:sh:1:block:見つかりません
正しいコマンドは何ですか?
ありがとう
編集する
次のコマンドに従ってください。 tail -f /var/log/ufw.log | grep BLOCK 出力は次のようになります。
[ 6951.750905] [UFW BLOCK] IN=eth0 OUT= MAC=xxxx SRC=88.99.100.01 DST=180.20.40.11 LEN=48 TOS=0x00 PREC=0x00 TTL=110 ID=26663 DF PROTO=TCP SPT=59501 DPT=21 WINDOW=8192 RES=0x00 SYN URGP=0
SRC = <ip_address>のみを表示するように出力をフィルタリングする方法
出力は次のとおりです。SRC=88.99.100.01
答え1
watch
マンページから:
時計(1)
名前
watch - execute a program periodically, showing output fullscreen
要約
watch [options] command
説明する
watch
実行を繰り返して command
出力とエラーを表示します(最初はフルスクリーンです)。これにより、経時的なプログラム出力の変化を観察できます。
デフォルトでは、プログラムは2秒ごとに実行されます。
デフォルトでは中止さwatch
れるまで実行されます。
これは、使用しているコマンドラインを検討するときに実行できると思うものと一致しないようです。まったく異なるコマンドを探している可能性があります...
編集する:コメントに追加した内容に基づいて何をしたいですか?できる完了しましたが、watch
操作に誤ったツールです。
tail -f /var/log/ufw.log | grep BLOCK
引き続きログファイルを追跡しますが、「BLOCK」を含む行だけを画面に印刷します。これはユーザーが望むものに近いです。