IPアドレスなどを探すスクリプトが欲しいです。
次のコマンドを使用してリストを生成します。
ip -4 neighbor show
しかし、どのように見るべきかわかりません。
command | awk ...
または
for i in command ; do ... done
結局これが合うようです。
LIST=$(the regex of Reda Salih)
for i in $LIST
do
if [ "${i}" == $my_ip]
then
echo found
exit 0
fi
done
echo not found
しかし、よりエレガントな解決策がありますか?
答え1
次の正規表現でgrepを使用できます。
ip -4 neighbor show | grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)" | grep -oh <ip_addr>
<ip_addr>を自分のIPに置き換えてください。