无忧启动论坛

标题: 借人气求find相关bat代码 [打印本页]

作者: dnnn    时间: 2007-12-11 18:02
标题: 借人气求find相关bat代码
想做个程序需要自动查找硬盘上Grub.exe位置,找到后自动运行. 搜索所有硬盘分区 查找"/boot/Grub.exe" 的位置并运行

知道可以用FIND命令编写bat搞定,但本人水平太菜.请各位高手给写个简单的BAT.
作者: HYE    时间: 2007-12-18 08:32
我也想知道,帮你顶.高手们不屑于回答吗
作者: hytmtet    时间: 2007-12-19 07:43
不用find的
用for循环
用if exist来判断是否存在

这样就全部用内部命令了
find是外部程序
不如内部命令方便

因为DOS下的for循环不支持带括号的多条语句
也不支持在循环结果中实用goto语句
所以需要两个bat
一个bat是循环
另外一个bat是判断文件


例如A.bat内容

for %%i in (z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c) do call findgrub.bat %%i

然后建立一个findgrub.BAT
内容如下

if exist %1:\boot\grub.exe %1:\boot\grub.exe
作者: 地方电力    时间: 2007-12-19 21:12
很好的,我刚学会用这个批处理了!
作者: HYE    时间: 2007-12-20 08:43
好的,又学了一招.........
作者: 都市浪子666    时间: 2008-1-15 23:06
谢谢,又学到了一条命令,,
作者: namejm    时间: 2008-1-16 19:49
  3楼的解释已经非常详细了,不过,用一个批处理文件似乎也是可行的(没有测试环境,尚未测试):

  1. @echo off
  2. for %%i in (z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c) do if exist %%i:\boot\grub.exe start %%i:\boot\grub.exe
复制代码

作者: 地方电力    时间: 2008-1-16 22:52
很好的啊,我学会了,我也很想知道的!




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3