ローカルIPアドレスが10.0.0.159のRHEL 7システムでは、次のコマンドはIPを印刷します10.0.0.159
。
$ echo "$(ifconfig eth0 | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | \
grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1')""(rw,sync)"
「10.0.0.0/8」を印刷するには、コマンドを何に変更する必要がありますか?
ベストアンサー1
メモ: ifconfig
廃止予定の cmd です。 cmdを使用する必要があります。 iproute2パッケージにあります。以下は、ip
交換ツールを使用して目的の操作を実行する方法を示しています。
ifconfig
これを行うのではなく、コマンドを使用することをお勧めしますip
。
IPネットワークセグメント
このフォームはCIDR表記でIPアドレスを表示します。
$ ip addr list eth0 | awk '/inet.*brd/ {print $2}'
10.0.2.15/24
-or-
$ ip a l eth0 | awk '/inet.*brd/ {print $2}'
10.0.2.15/24
ネットワークセグメント
このフォームはCIDR表記でネットワークアドレスを表示します。
$ ip route show | awk '/eth0.*scope/ {print $1}'
10.0.2.0/24
IP計算
また、このipcalc
コマンドを使用して上記のアドレスを操作して他の形式を計算することもできます。たとえば、
$ ipcalc -n $(ip a l eth0 | awk '/inet.*brd/ {print $2}')
NETWORK=10.0.2.0
$ ipcalc -p $(ip a l eth0 | awk '/inet.*brd/ {print $2}')
PREFIX=24
これを使用すると、複雑すぎるテキストを解析するためにipcalc
多くのことを行わなくても、必要なバリエーションをより簡単に整理できますsed
。awk