0

.元のファイルを変更する必要があるインターフェイスのリストを取得した :ので、それらを ifconfig スクリプトにフィードできます。

基本的には次のようになります。

eth0.1 192.168.0.1 255.255.255.0

eth0.2 192.168.1.1 255.255.255.0

eth0.3 192.168.2.1 255.255.255.0

私の基本的な sed の知識を使用して、次のことができます。

sed -i 's/\./\:/g' <test_file>

.これはすべてに変わります:

eth0:1 192:168:0:1 255:255:255:0

ここで、元のファイルを変更していない場合は変更できるawk '{print $1}'と思いますが、使用時にこれを行う方法がわかりませんsed -i

次のようなサブインターフェイスではない特定の行もあることに注意してください。

eth1 10.10.10.1 255.255.255.0

in をドロップするgsed(正しい方向だと確信しています)、残念ながら、これらの行の最初のオクテットが次のように変更されます。

eth1 10:10.10.1...
4

1 に答える 1

2

これを試して :

sed -i -r 's/^(eth[0-9]+)\./\1:/' file.txt

出力:

eth0:1 192.168.0.1 255.255.255.0
eth0:2 192.168.1.1 255.255.255.0
eth0:3 192.168.2.1 255.255.255.0
于 2013-02-22T16:14:53.440 に答える