![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-11 06:17 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 如何读取文本每一行,且自动设定变量 |
| 可打印版本 802 / 4 |
| 第1楼 wuhanbin | 发表于 2009-01-19 22:15 |
| 初级用户 发帖 86 积分 191 | |
|
如何读取文本每一行,且自动设定变量 加入一个文本a.txt内容如下(已知文本行数小于等于26行)
CD DIR GET …… 设定变量%a%为CD %b%为DIR %c%为GET ……以此类推 如果只有3行,就只设%a%,%b%,%c%三个变量,不要多设. 请问如何实现,谢谢! [ Last edited by wuhanbin on 2009-1-19 at 22:16 ] |
|
| 第2楼 tireless | 发表于 2009-01-19 22:41 |
| 银牌会员 发帖 1,122 积分 2,025 | |
| 第3楼 netbenton | 发表于 2009-01-19 23:18 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
@echo off&setlocal enabledelayedexpansion
set nn=0 set str=a b c d e f g h i j k l m n o p q r s t u v w x y z for %%a in (%str%) do set /a nn+=1&set _!nn!=%%a set nn=0 for /f %%a in (a.txt) do (call :sub&set !aa!=%%a) for %%a in (%str%) do if not "!%%a!"=="" echo %%a=!%%a! pause :sub set /a nn+=1 set aa=!_%nn%! goto :eof [ Last edited by netbenton on 2009-1-20 at 00:31 ] |
|
| 第4楼 wuhanbin | 发表于 2009-01-20 00:05 |
| 初级用户 发帖 86 积分 191 | |
|
谢谢大家的帮助,netbenton的代码输出结果:
a=CD %b% b=DIR %c% c=GET %d% 如何才能把每行最后的%%去掉呢,谢谢! |
|
| 第5楼 netbenton | 发表于 2009-01-20 22:58 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
不好意思,是我看错了,已经改过来了.
不过2楼的更精练 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |