无忧启动论坛
标题:
C大,不点大大FAT COPY *.* TO *.*
[打印本页]
作者:
hotdll
时间:
2011-10-6 00:15
标题:
C大,不点大大FAT COPY *.* TO *.*
------------------------------------------------------------------------------------------------------------------------------------------------------
解决方法:用连接符|调用标签传参,例如ls (ud)/ | call :list=
起因见我的那个F6IMG的设想和实现。
目前遇到瓶颈
在不编程的情况下,纯粹的用grub4dos能不能复制动态指定目录下的所有文件到(fd0)否?
ls (ud)/srs/ > (fd0)/file.lst
WENV FOR /F %i in ( (fd0)/file.lst ) do echo %i
结果显示的是第一个空格前的字符串。其它的抛弃。
也就是说ls命令输出的是"\0"做分隔符,而不是“\n",而WENV FOR /F命令默认是一次读一行的。
如果指定token,因为不知道file.lst包含的字符串位数,所以token也无法指定。
C大或者不点大大能不能给一个方案?
或者是改进ls的命令,让他输出不是空格而是换行。或者WENV默人按空格分解字符串,而不是一次一行?或者加参数控制?
如果是CMD的FOR就简单了。
[
本帖最后由 hotdll 于 2011-10-16 11:45 编辑
]
作者:
chenall
时间:
2011-10-6 08:19
标题:
回复 #1 hotdll 的帖子
我记得wenv默认就是以空格分隔的。
你可以看一下WENV的介绍。
我好久没有用WENV的,目前现在内置的够我使用了,WENV的很多功能都可以直接写个批处理来实现。
像wenv for的部份功能,直接用批处理就可以实现了,比如。
ls (ud)/srs/ | call :list_file=
exit
:list_file
....
可以参考我的list.file还有dpms的批处理,里面都有类拟的遍历文件方法。
http://chenall.net/post/g4d_filelist/
作者:
hotdll
时间:
2011-10-6 09:34
标题:
回复 #2 chenall 的帖子
谢谢C大,目前遍历成功,看来WENV的功能还是需要扩展的。
您给我的这个批处理真的很巧妙,又学了一招。
再问个问题:您的判断ls | call :check_inf
:check_inf
echo %~0
这个%~0和%0 有什么区别?CMD下%~0表示自身路径,grub4dos呢?
作者:
chenall
时间:
2011-10-6 09:55
标题:
回复 #3 hotdll 的帖子
和CMD下是一样的。
作者:
hotdll
时间:
2011-10-6 10:24
标题:
回复 #4 chenall 的帖子
谢谢C大,呵呵第一个版本已经出来了。
我感觉比你那个还要简单。
作者:
快雪时晴
时间:
2011-10-6 11:18
标题:
回复 #5 hotdll 的帖子
期待释出,看来也解决了NVIDA主板驱动问题了
作者:
hotdll
时间:
2011-10-16 11:42
已经解决了。1楼有解决方法!
欢迎光临 无忧启动论坛 (http://wuyou.net/)
Powered by Discuz! X3.3