求技术帝能写一个批处理,能够查找TXT文件中的IP地址后加1然后批量输出TXT文件。

2025-03-09 12:39:41
推荐回答(2个)
回答1:

如果保存 IP 的文件是 IP.txt:

@echo off
for /f "tokens=3-6 delims=. " %%a in ('findstr /i "address" ip.txt') do (
set "a=%%a" & set "b=%%b" & set "c=%%c" & set "d=%%d")
echo 得到的IP是:%a%.%b%.%c%.%d%
set /p f=请输入欲生成的文件个数:
set /a p=%d%+%f%-1
if %p% GTR 254 set p=254
for /l %%x in (%d%,1,%p%) do (
echo ^ > %a%.%b%.%c%.%%x.txt
echo interface vlanif101>>%a%.%b%.%c%.%%x.txt
echo ip address %a%.%b%.%c%.%%x 255.255.255.0>>%a%.%b%.%c%.%%x.txt)

回答2:

这个文本中除了IP地址还有什么内容?IP地址有没有标识? 如果只是IP地址,例如在1.txt文本中,每行一个地址,代码如下
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1-4 delims=." %%a in (1.txt) do (
set /a fo=%%d
set /a fo=!fo!+1
echo %%a.%%b.%%c.!fo!>>newIP.txt
)
不知道你说的指定个数的txt文件什么意思,是说按不同IP生成txt文件名吗?那可以把代码中newIP用变量替换就可以了