静的 IP を新しい IP アドレスに置き換える bash スクリプトが必要です

静的 IP を新しい IP アドレスに置き換える bash スクリプトが必要です

Centos マシン用の bash スクリプトが必要です。スクリプトで現在の IP アドレス / サブネット マスク / デフォルト GW を表示し、新しい IP アドレス / サブネット マスク / デフォルト GW を入力するオプションを提供する必要があります。これは ETH0 に対して実行する必要があります。

誰かそれをどうやってやるかのアイデアを持っていますか?

ありがとう!!

答え1

すべてを説明するつもりはありませんが、Ubuntu で動作するものを次に示します。

ifconfig eth0 | grep "inet addr:" | awk -F: '{ print $2 }' | awk '{ print $1 }'

これにより、eth0 の現在の IP アドレスがエコーされます。

答え2

ifconfig(1)はインターフェースのIPパラメータを操作するための標準コマンドです。man ifconfig使い方については、を参照してください。例えば、

ifconfig eth0 192.168.0.1 netmask 255.255.255.0

eth0 の IP アドレスとネットマスクを設定します。

インターフェースパラメータを読むには、grep/sed/perlを使って出力を解析することができますifconfig eth0が、ifdataコマンドがあれば、例えばIPアドレスだけを取得する簡単な方法があります。

ifdata -pa eth0

Ubuntu では、ifdata はパッケージの一部ですmoreutils

関連情報