标题: [文本处理] 批处理如何将文本文件的每一行赋值给一个变量? [打印本页]
作者: mrcool 时间: 2011-4-21 13:19 标题: 批处理如何将文本文件的每一行赋值给一个变量?
我有个ip.txt,里面有几百行的内容,内容格式如下:
127.0.0.1:80
127.0.0.1:8000
127.0.0.1:8001
127.0.0.1:8002
127.0.0.1:8003
我想在一个批处理中,第一次循环的时候将第一行的值赋值给变量n,第二次循环的时候将第二行的内容赋值给变量n。
请问如何实现?谢谢各位师傅。
作者: hanyeguxing 时间: 2011-4-21 13:22
直接 for /f
作者: Hello123World 时间: 2011-4-22 16:35
本帖最后由 Hello123World 于 2011-4-22 16:36 编辑
- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in (help.txt) do (set n=%%i
- @echo !n!)
- pause
复制代码
作者: Batcher 时间: 2011-4-22 23:27
3# Hello123World
如果文件里面有这样的行呢?
on
off
作者: Hello123World 时间: 2011-4-24 15:05
本帖最后由 Hello123World 于 2011-4-24 18:49 编辑
4# Batcher - @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in (help.txt) do (set n=%%i
- @echo\!n!)
- pause
复制代码
如果真遇到,我也只能这样了,不知道还有什么更好的方法没?
作者: ▄︻┻═┳一 时间: 2011-4-24 15:33
用echo. 输出
作者: broly 时间: 2011-4-24 15:35
echo=!n!或echo\!n!
作者: Hello123World 时间: 2011-4-24 18:45
本帖最后由 Hello123World 于 2011-4-24 18:46 编辑
果然都行
echo.on
echo=on
echo\on
,不过echo= echo\ 可以解决空行的问题,echo.遇到空行就不行了。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |