中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-18 20:33
47,814 主题排行 / 349,908 发帖 / 今日 1 篇 / 48,259 会员排行
DOS批处理 & 脚本技术(批处理室) » 请教纯DOS下读取txt文件内容至变量
可打印版本  5,755 / 19
第1楼 NaturalJ0 发表于 2006-08-15 16:21
银牌会员 发帖 533 积分 1,181
请教纯DOS下读取txt文件内容至变量
我翻了些论坛的帖,发现FOR在纯DOS下功能不够用。又有达人提到使用第三方软件或其它方法。能给小弟一个第三方软件和简单使用方法吗?非常感谢。

[ Last edited by NaturalJ0 on 2006-8-15 at 16:22 ]
第2楼 chenall 发表于 2006-08-16 16:08
银牌会员 发帖 469 积分 1,276 来自 福建泉州
建议先搜一下论坛.好像有许多介绍的.
可以使用LMOD,strings等程序.
第3楼 BAT 发表于 2006-08-16 23:04
初级用户 发帖 52 积分 177
是否可以不用三方工具来实现读取文件内容至变量
第4楼 vkill 发表于 2006-08-22 12:13
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
看你的文件内容是什么?
第5楼 piziliu2004 发表于 2006-08-22 18:14
中级用户 发帖 139 积分 321
建议自己用tc做一个小tool. 很简单的十几行代码就可实现.
第6楼 NaturalJ0 发表于 2006-08-22 22:31
银牌会员 发帖 533 积分 1,181
Originally posted by piziliu2004 at 2006-8-22 18:14:
建议自己用tc做一个小tool. 很简单的十几行代码就可实现.

我后来就是这么做的。
第7楼 vkill 发表于 2006-08-25 12:06
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
把你的txt文件内容帖出来,想把什么做为变量,给你批处理,不用第三方软件的
第8楼 wang6610 发表于 2006-08-27 22:37
银牌会员 发帖 488 积分 1,246
Originally posted by NaturalJ0 at 2006-8-22 10:31 PM:

我后来就是这么做的。


能把它帖出来吗?
第9楼 wang6610 发表于 2006-08-27 22:40
银牌会员 发帖 488 积分 1,246
Originally posted by he200377 at 2006-8-25 12:06 PM:
把你的txt文件内容帖出来,想把什么做为变量,给你批处理,不用第三方软件的



username
password


就这两行,批处理该怎么写?


谢谢!
第10楼 NaturalJ0 发表于 2006-08-27 23:59
银牌会员 发帖 533 积分 1,181
Originally posted by wang6610 at 2006-8-27 22:37:


能把它帖出来吗?

好的。
我原来是想要个密码功能,自己用 TC 写了个,在这里。
http://zhenlove.com.cn/cndos/fileup/files/PASSWORD.rar
里面是 PASSWORD.EXE
运行时在同目录查找 PASSWORD.TXT ,并读取其内容为原始密码。
读取时从文件开始读取至第一个回车,回车前可以有空格和符号等。
然后要求用户输入密码与原始密码进比较。
如果相同,在同目录生成 PASSWORD.OK 文件。
如果不同,在同目录生成 PASSWORD.ERR 文件。
以上两种情况属正常运行,都会再生成一个 PASSWORD.RUN 文件,若用户按 Ctrl + C 强制中断,则此文件将不会生成。

使用时可以在 BAT 中使用 echo "Your Password">PASSWORD.TXT 来设置原始密码。
然后根据三个状态文件的生成情况判断处理。连续使用的时候时要自己删除状态表示文件。

[ Last edited by NaturalJ0 on 2006-8-28 at 00:01 ]
第11楼 wang6610 发表于 2006-08-28 07:11
银牌会员 发帖 488 积分 1,246
Originally posted by NaturalJ0 at 2006-8-27 11:59 PM:

好的。
我原来是想要个密码功能,自己用 TC 写了个,在这里。
http://zhenlove.com.cn/cndos/fileup/files/PASSWORD.rar
里面是 PASSWORD.EXE
运行时在同目 ...




PASSWORD.EXE它把读取的字串赋予给dos变量的名字是什么?
第12楼 NaturalJ0 发表于 2006-08-28 08:31
银牌会员 发帖 533 积分 1,181
PASSWORD.EXE 没赋。
要赋的话自己根据状态赋好了。
第13楼 vkill 发表于 2006-08-28 12:58
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
namepass.txt
username
password


*.bat
echo set username=%%0 >username.bat
echo set password=%%0 > password.bat
find namepass.txt /i "username" >temp1.bat
find namepass.txt /i "password" >temp2.bat
call temp1.bat
call temp2.bat
del /q username.bat
del /q password.bat
del /q temp1.bat
del /q temp2.bat
echo %username% >>x.txt
echo %password% >>x.txt


不知道这样表达对不对
namepass.txt要是如下,则set 那就改为%%1
namepass.txt
username abc
password 123


namepass.txt要是如下,文件名中不让用:,我想可以用有个帖子的方法,大概是echo !%name:~0,-1%_ ! ,就是去掉:加一个空格,这样可以改为和上面的那个一样
namepass.txt
username:abc
password:123
第14楼 wang6610 发表于 2006-09-01 15:41
银牌会员 发帖 488 积分 1,246
Originally posted by he200377 at 2006-8-28 12:58 PM:
namepass.txt
username
password


*.bat
echo set username=%%0 >username.bat
echo set password=%%0 > password.bat
find namepass.txt /i "username" >temp1.bat
find namepass. ...



namepass.txt
username:abc
password:123

谢谢!

abc

123

它们后面多了两个空格,如何不让它多啊? 谢谢!

[ Last edited by wang6610 on 2006-9-1 at 15:44 ]
第15楼 namejm 发表于 2006-09-01 16:01
荣誉版主 发帖 1,737 积分 5,226 来自 成都
Originally posted by wang6610 at 2006-9-1 15:41:

谢谢!

abc

123

它们后面多了两个空格,如何不让它多啊? 谢谢!

[ Last edited by wang6610 on 2006-9-1 at 15:44 ]

  把echo set username=%%0 >username.bat 改写成 echo (set username=%%0)>username.bat 或者 >username.bat echo set username=%%0

[ Last edited by namejm on 2006-11-5 at 12:21 PM ]
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023