![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-19 14:33 |
共 47,814 主题排行 / 349,908 发帖 / 今日 0 篇 / 48,259 会员排行 |
| DOS疑难解答 & 问题讨论 (解答室) » [已解决]纯DOS下如何删除变量后空格及strings 问题?? |
| 可打印版本 1,383 / 8 |
| 第1楼 goli2008 | 发表于 2008-11-28 22:40 |
| 中级用户 发帖 97 积分 252 | |
|
[已解决]纯DOS下如何删除变量后空格及strings 问题?? 近日玩个纯DOS启动,发现dos下的bat2com或bat2exe有个通病,
用echo abc >a.txt生成的文件,若直接运行BAT,则生成的txt文件正常,若转换为COM或BAT后,生成的TXT文件每行后都有10个空格!!!!! 因在纯DOS下,不知如何将其后的空格去掉?? 后来,用strings 对文本一行行地分析处理,可以去掉部分空格,但是有个无法解决的问题,就是“逗号”,若变量中有逗号,则打乱strings的判断,因strings逗号作分隔符: 例:strings a=right 变量,2---变量中的逗号与这个外部逗号冲突!!!!! 求助内容:1、谁有去掉变量后面或前面空格的方法或软件?(纯DOS) 2、谁知道strings如何处理内部变量逗号的问题? 3、谁有更好的纯DOS的BAT2exe软件?? 等高手来,我找了好久了,没找到办法,先谢谢了! [ Last edited by goli2008 on 2008-12-2 at 11:13 ] |
|
| 第2楼 HAT | 发表于 2008-11-29 13:55 |
| 版主 发帖 5,017 积分 9,023 | |
|
这样呢?
|
|
| 第3楼 goli2008 | 发表于 2008-11-30 17:35 |
| 中级用户 发帖 97 积分 252 | |
|
楼上的方法在BAT中可行,转为COM后出错,不认识的命令。
已自己完美解决,稍后再分享重要经验 [ Last edited by qwe123456 on 2008-11-30 at 17:42 ] |
|
| 第4楼 alchemist | 发表于 2008-11-30 18:11 |
| 高级用户 发帖 193 积分 652 | |
|
每个BAT转EXE或COM软件都有自己的BUG,我这里有几年前为练习打字的机房编的一个近10KB的BAT.当时发现用任何一个转化软件都无法完美运行
|
|
| 第5楼 goli2008 | 发表于 2008-11-30 19:04 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by alchemist at 2008-11-30 18:11: 等会我再告诉你,你的观点100%错误是! |
|
| 第6楼 DOSforever | 发表于 2008-11-30 19:30 |
| 金牌会员 发帖 2,239 积分 4,639 | |
|
虽然我从不做这种转换,不知道正确与否,但从你自己的
这句话中似乎证明了
不是100%错误的。 |
|
| 第7楼 goli2008 | 发表于 2008-11-30 19:39 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by DOSforever at 2008-11-30 19:30: 不好意思,打错了 |
|
| 第8楼 goli2008 | 发表于 2008-11-30 19:49 |
| 中级用户 发帖 97 积分 252 | |
|
经过N回测试,自己找到解决办法:
1、bat2com 确实对ECHO生成的文件文本后面多10个空格,(我用的是bat2com V1.5),如果对生成的文本对空格很敏感,如set a=c:与set a=c: 是完全不同的, 用strings的write命令,可以完善代替echo,而且对于>|等echo不认的符号,解决的非常好,如: strings write a.bat,strings vhao=char 62 strings write a.bat, test txt %%vhao%%b.txt a.bat 其中Vhao为>,可以任意定义为|等, 运行a.bat即可得b.txt 2、strings /p?可以代替“,”,以前没发现,非常简单。 3、bat2com能保证100%的转换为COM,运行正确,具体方法,稍后另说。 |
|
| 第9楼 goli2008 | 发表于 2008-12-02 11:14 |
| 中级用户 发帖 97 积分 252 | |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |