Powershell foreach循环在第三次执行时没有退出

时间:2017-06-21 13:28:30

标签: loops powershell foreach

我有一个powershell脚本,它遍历URL的SQL表,并收集网页上标签中的任何其他URL。

当SQL表中只有几个URL但是foreach循环似乎在几次运行后停止工作并且表已经增长(但只有大约250多行)之后似乎运行良好,之后它只是挂起,我无法弄清楚原因。活动只是停止,foreach循环永远不会退出。

<div class="col-sm-10">
    <input type="email" class="form-control"
    name="txtEmail_{{$index}}" maxlength="100"
    placeholder="Enter Email" ng-model="contact.EMAIL">
</div>
<span ng-show="ContactForm['txtEmail_' + $index].$invalid">Enter a valid email</span>

当我在我的表格中插入一行时,例如http://rouge.jneen.net(不是我的网站,只是我喜欢的一行,只有几个链接可以开始),还会插入另外六个网址。然后,当我再次运行它时,它将转到表中的所有URL并插入279个URL。这很好,但是当我第三次运行它时,它在Uri https://github.com/edwardloveall/portfolio上调用Invoke-WebRequest后挂起,并且没有做任何其他事情。

有人可以指点我如何调试这个或我出错的地方。

1 个答案:

答案 0 :(得分:0)

试试这个,

$Request = Invoke-WebRequest -Uri $Row[0] -TimeoutSec 30

我有一个类似的问题,罪魁祸首是调用,它一直等到调用发生。所以给调用超时以跳过一些占用你时间的调用。

另外,我建议您尝试使用For eac Parallel来尝试工作流程,以便更快地执行。