标题: for命令在CMD下运行正常,但是在纯DOS下提示语法错误?
[打印本页]
作者: tomystory
时间: 2008-4-16 10:08
标题: for命令在CMD下运行正常,但是在纯DOS下提示语法错误?
一个TXT或者是LOG文档,里面的内容是16位的一串数字和字符,我只想要后8位,比如里面是00902800987867AB,我只想要987867AB
所以我用FOR命令:
set var=002000005854472A
set var=%var:00200000=_%
for /f "delims=_" %%i in ("%var%") do echo %%i
在windows的命令提示符下运行可以成功, 但是我进DOS后运行居然提示SYNTAX ERROR(语法错误)!!!
我的DOS是纯98DOS, 后来我又用矮人DOS工具进去,那个DOS是7.1版的,无论加载EMM或者是HIMEM都一样提示语法错误,我就晕了,为什么命令提示符下可以运行成功,但在纯DOS下不行呢?
另外有人说可以用filecut实现我的要求,但是我不知道怎么配置filecut.ini,如果有知道的大哥麻烦告诉一下用filecut怎么实现这个也行
多谢拉!!!!!!
作者: clonecd
时间: 2008-4-16 10:25
纯DOS里的for没有 /f 这个参数,"delims=_" 的用法就更别提了。
你的第二行命令在纯DOS里也是错误的,楼主好好弄清楚纯DOS和CMD的区别。
Last edited by clonecd on 2008-4-16 at 10:27 AM ]
作者: tomystory
时间: 2008-4-16 10:30
Re: clonecd
这样啊。。。 多谢了
可是这样说的话,用for命令在DOS下就没法做了,那请问有没有别的办法实现我要的功能呢? 比如怎么用filecut 或者是别的什么办法?
作者: clonecd
时间: 2008-4-16 14:31
楼主好好看看纯DOS下的lmod、strings的用法,更高级的应用可以看看纯DOS下的sed和awk的用法,请分别用相应的关键词搜索本楼论坛即可,应该能达到你的要求,自己慢慢学吧。