标题: 生成IP表的批处理代码哪里出错了? [打印本页]
作者: jakorzhang 时间: 2012-11-6 16:36 标题: 生成IP表的批处理代码哪里出错了?
- @echo off&setlocal enabledelayedexpansion
- echo ip表为:>ip.txt
- for %%i in (A B C D E F G H) do (
- for /l %%j in (1,1,8) do (
- set /a ip+=%%j
- echo %%i%%j的ip是:192.168.1.!ip! >>ip.txt
- )
- )
- start ip.txt
- pause>nul
复制代码
结果应该是
ip表为
A1的ip是:192.168.1.2
A2.。。。。。。。。。.3
A3.。。。。。。。。。.4
.。。。。
。。。
B1.。。。。。。。。。.2
可是事实不如人愿啊。
作者: Demon 时间: 2012-11-6 16:43
标题违规。
作者: jakorzhang 时间: 2012-11-6 16:49
回复 2# Demon
以修改 我以为这算是文本处理呢
作者: Demon 时间: 2012-11-6 17:04
本版规则
1、求代码、寻求代码解释、探讨代码得失的帖子均可发在本版块;
2、标题或顶楼内容模糊(未说明代码功能或问题所在)的帖子一律关闭;
3、请使用 code 标记把代码部分括起来(选中代码后,单击回复框的 <> 按钮),以便复制;
4、求助时,务必在顶楼一次性把问题交代清楚,建议给出有针对性的样本;
5、问题解决后,请编辑顶楼帖子在标题前面注明[已解决],并给回答者加分。(所加的分数由论坛供应)
作者: BAT-VBS 时间: 2012-11-7 07:59
- @echo off
- setlocal enabledelayedexpansion
- (echo ip表为:
- for %%i in (A B C D E F G H) do (
- for /l %%j in (1,1,8) do (
- set /a ip=%%j+1
- echo %%i%%j的ip是:192.168.1.!ip!
- )
- ))>ip.txt
- start ip.txt
复制代码
作者: jakorzhang 时间: 2012-11-7 09:19
回复 5# BAT-VBS
还麻烦给解释解释set /a a+=1和set /a a=a+1不一样吗?
作者: BAT-VBS 时间: 2012-11-7 17:18
回复 6# jakorzhang
一样。
问题在于set /a ip+=%%j等效于set /a ip=%%j+!ip!,而不是set /a ip=%%j+1
作者: jakorzhang 时间: 2012-11-7 17:33
回复 7# BAT-VBS
不胜感激!我太糊涂了。脑子卡壳了。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |