1

我有一个未指定的 IP,我想更改其中的一部分(对于任何 ipaddress,它的第三部分为 254),例如

172.16.1.2  -> 172.16.254.2<br/> 
192.168.2.6 -> 192.168.254.6<br/> 
x.x.x.x     -> x.x.254.x<br/>

我应该如何使用 shell 脚本来做到这一点?

4

1 回答 1

0

sed 是一个经典的解决方案。

 sed -E -e 's/(.*)[.](.*)[.](.*)[.](.*)/\1.\2.254.\4/'

找到具有三个点的东西并复制除第三个被 254 替换的所有内容。

然后像这样使用它:

echo a.b.c.d  | sed -E -e 's/(.*)[.](.*)[.](.*)[.](.*)/\1.\2.254.\4/'
于 2012-10-07T08:42:31.470 回答