Board logo

标题: [文本处理] [已解决]批处理for语句获得的字符串怎样赋值给变量? [打印本页]

作者: yanai0827    时间: 2012-12-5 18:51     标题: [已解决]批处理for语句获得的字符串怎样赋值给变量?

本帖最后由 yanai0827 于 2012-12-7 13:16 编辑

实现需求:  将一个行数不确定的文档,每一行的文字赋值给一个变量

实现代码:
  1. for /f "eol=*" %%i in (device.txt) do (
  2.         if "%%i" equ "List" (echo >nul  ) else (
  3.         Set /a deviceNum=deviceNum+1
  4.         echo ^Set device%deviceNum% ^= %%i >> list.txt
  5.         )
复制代码
发现问题:  出现的永远是device1=,不会变更

期望解决方法:  可以按照有两行就显示device1=   device2=

[求助] 怎样实现变量递增

看了一下论坛里有类似的帖子,感觉都不太一样,还希望大家多多帮助.

诚恳拜谢各位的回答
作者: weichenxiehou    时间: 2012-12-5 19:16

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "eol=* delims=" %%i in (device.txt) do (
  3.    if not "%%i" equ "List" (
  4.         Set /a deviceNum+=1
  5.         echo Set device!deviceNum!=%%i
  6.    )
  7. ))> list.txt
复制代码

作者: yanai0827    时间: 2012-12-7 13:15

太感谢了~学到不少~




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2