UbuntuとMacのメインインターフェイスのIPアドレスを取得します。

UbuntuとMacのメインインターフェイスのIPアドレスを取得します。

不明なルート(たとえば、0.0.0.0/0がルーティングされる場所)へのインターフェイスのIPアドレスを取得するスクリプトを作成する必要があります。

スクリプトは追加のパッケージをインストールせずにUbuntu、Debian、Arch、およびMac OSシステムで実行する必要があります。

Ubuntuはデフォルトのhostname -IIPアドレスを提供するを使用します。ただし、以前のバージョンのubuntu、debian、arch、およびMac OSでは-Flagを-I使用できません。

2番目のアイデアはifconfig出力を解析することでしたが、各システムで命名が非常に異なるため(たとえば、ドイツのシステムには何もaddr:ないため、これも機能しません)。

Webアプリケーションを実行するための小さなスクリプトと静的コンテンツを提供するための小さなPython-Webserverを作成するには、この情報が必要です。このスクリプトはHTMLとCSSをほとんど書くことはできませんが、bashについて全く知らないデザイナーが使用します。

答え1

このコマンドは、routeさまざまなIPアドレスとデバイス名にアクセスするために使用されるパスに関する情報を提供します。

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
10.0.0.0        *               255.255.0.0     U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0

このコマンドは、あなたが言及したすべてのシステムで使用できると思います。

関連情報