批处理脚本:循环和标签

时间:2012-08-29 11:18:21

标签: multithreading batch-file wget simultaneous-calls

我正在尝试制作一个脚本(在Windows中批处理),使用wget下载5个文本文件,并对每个文件执行一些操作,所以我想用这样的循环来做这个

set i=0
:begin
set /a i=%i%+1
if %i% equ 5 exit
wget ".....file1.txt"
goto operations

:operations
stuff
stuff
goto begin
  • 操作包括使用grep和sed从文本中获取信息并将其保存到文本
好吧,它应该可以工作,但是这需要花费很多时间,我希望批处理能够以有效的方式完成它,因为这样它将下载一个(花一些时间)并将进行操作。 我想做的是使它成为一个多线程,我的意思是让它同时做这5个文件(下载+操作)。

谢谢

1 个答案:

答案 0 :(得分:1)

如果您使用wget +处理单独的批处理文件的实际过程,则可以“启动”批处理文件,该文件将其作为子进程生成并继续在主批处理文件中,例如。

batchfile1.cmd
<do something really long>

batchfile2.cmd

for %%N in (a b c d e f g) do start batchfile1.cmd %%n

你最终会同时运行a-g - 然而你不能轻易告诉它们什么时候完成。