gpt4 book ai didi

vim - 在 VIM 中增加多个 IP 地址

转载 作者:行者123 更新时间:2023-12-04 14:14:13 26 4
gpt4 key购买 nike

我想编辑我的主机文件以匹配我当前的 IP,我可以在 Python 或 AWK 中完成,但我想知道在 VIM 中是否有办法...

让我们看看我的意思,我的主机看起来像这样:

192.168.11.172    blazer blazer.mydomain
192.168.11.173 faster faster.mydomain
...
192.168.11.225 schurtig schurtig.mydomain

现在,我想将每个 IP 增加 32,因此最终结果将是:
192.168.11.202    blazer blazer.mydomain
192.168.11.203 faster faster.mydomain
...
192.168.11.257 schurtig schurtig.mydomain

如果我将光标放在正确的 IP 上,然后输入

30 and CTRL+A



它做我想要的。

唯一的问题,我有大约 300 台主机......而且我需要每 3 个月做一次......
虽然我可以在 Python 中完成,但在 vim 中看到文件 感觉更安全,因为我不需要运行脚本然后控制之后的结果。

以下仅更改第一行:
let i=172 | g/172/s//\=i+30/

我想在循环中为不同的 IP 范围重复此操作,以便能够说出我应该增加多少次,是否有“技巧”可以做到这一点?

在此先感谢您的努力,
盎司

最佳答案

我当然不是 vim 专家(还),但我会这样做([] 显示光标位置)

192.168.11.[1]72    blazer blazer.mydomain
192.168.11.173 faster faster.mydomain
...
192.168.11.225 schurtig schurtig.mydomain

qa (开始一个名为 a 的宏)。进行修改(例如 30 CTRL-A )。光标现在应该在这里:
192.168.11.20[2]    blazer blazer.mydomain
192.168.11.173 faster faster.mydomain
...
192.168.11.225 schurtig schurtig.mydomain

b转到单词的开头:
192.168.11.[2]02    blazer blazer.mydomain
192.168.11.173 faster faster.mydomain
...
192.168.11.225 schurtig schurtig.mydomain

j (或向下箭头)转到下一个要更改的数字的开头:
192.168.11.202    blazer blazer.mydomain
192.168.11.[1]73 faster faster.mydomain
...
192.168.11.225 schurtig schurtig.mydomain

q终止宏定义。

现在你还有 53 个 IP,你只需要重复这个宏 53 次: 53@a

关于vim - 在 VIM 中增加多个 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10851031/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com