ログファイルから最新の値を返す必要があります。この値は常にログファイルの終わりにあることを知っており、結果は1つだけ必要です。
Ubuntuでは、以下を使用してこれをtac dhcp.log | grep macaddress -m 1
行いましたtail -r dhcp.log | grep macaddress
。ファイル全体を実行しないように、最初の結果の後にgrepを終了する方法はありますか?
答え1
GNUgrepをインストールした場合(たとえば、/usr/bin/ggrep
Solaris /opt/gnu/bin/grep
11、/opt/sfw/bin/ggrep
Solaris 10)、このフラグがあります-m
。
代わりに、grep
次のものを使用できます。sed
sed -n '/macaddress/{ p
q
}'
答え2
これは以下に基づく代替ソリューションですawk
。
tail -r file | nawk '/macaddress/ {print;exit}'