BASHの変数にネットワーク情報を保存する方法は?

BASHの変数にネットワーク情報を保存する方法は?

いくつかの生のネットワーク情報を別の変数に保存する必要があるbashスクリプトを作成しています。たとえば、MacアドレスとIPアドレスは、次のような別々の変数にあります。

IPADDRESS=$(some_command)
MACADDRESS=$(some_other_command)
echo "$IPADDRESS has mac address $MACADDRESS"

これは単純化された例です。いいえこのコンテンツは直接読むのではなく、排他的なプログラムに/bin/proprietary_program $IPADDRESS $MACADDRESS

Linuxでは、MACアドレスのみを文字列として、IPアドレスのみを文字列として取得する方法は?私はip可能な限りこのコマンドを使用することを好みます。

ベストアンサー1

(NetworkManager)を使用する例がないので、nmcliここに追加します。

nmcli -f IP4.ADDRESS device show your_nic (returns all IPv4 addresses)
nmcli -f IP6.ADDRESS device show your_nic (returns all IPv6 addresses)
nmcli -f GENERAL.HWADDR device show your_nic (returns MAC address)

おすすめ記事