use*_*484 7 cmd dos batch-file
我已经通过谷歌世界进行了一次非常好的搜索以找到类似的问题,但是我找不到任何人在他们的FOR/F循环之外做事的例子,所以我不得不创建一个新线程.
我使用FOR/F循环在参考文件中找到的每行执行一次Ruby Gem,它完美地完成.问题是,当它完成滚动浏览其参考文件并执行Ruby Gem正确的次数时,它将不会完成FOR/F循环之外的.CMD文件中的任何其他内容.
这是我的.CMD代码:
FOR /F "tokens=1,2,3 delims=," %%a in (c:\cygwin\usr\work\easy.lst) do (
c:\ruby191\bin\scrapitalist website -u http://www.website.com/%%a/%%c/%%b.html -o C:\cygwin\usr\autobets\work\%%b_%%c.easy
)
copy c:\cygwin\usr\work\*.easy c:\cygwin\usr\autobets\work\easy.imp
Run Code Online (Sandbox Code Playgroud)
easy.lst文件中包含两行数据.
循环工作正常,执行Ruby Gem并创建*.easy文件作为输出,但COPY命令永远不会执行.我可以用ECHO替换副本,或者事实上任何东西,但它不会执行.
我无法看到我的FOR/F语法中缺少的内容 - 任何想法都会窥视?
谢谢
jeb*_*jeb 10
我想这scrapitalist
是一个批处理文件本身,因此它会停止批处理文件,但是当FOR-loop被缓存时,它会工作到最后.
要解决此问题,您只需要一个单独call
的前缀.
FOR /F "tokens=1,2,3 delims=," %%a in (c:\cygwin\usr\work\easy.lst) do (
call c:\ruby191\bin\scrapitalist website -u http://www.website.com/%%a/%%c/%%b.html -o C:\cygwin\usr\autobets\work\%%b_%%c.easy
)
copy c:\cygwin\usr\work\*.easy c:\cygwin\usr\autobets\work\easy.imp
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2538 次 |
最近记录: |