什么可以从内部阻止循环的猛击

  • 本文关键字:循环 内部 bash
  • 更新时间 :
  • 英文 :


我正在浏览一堆这样的数据:

for id in `cat ids.list` ; do echo $id ; bin/migrate.pl --id $id ; done

我遇到了一个问题,几百$ids后,migrate.pl 脚本因后端超时错误而死亡(尽管我不确定是否相信错误消息)。

但是当 migrate.pl 脚本死亡时,整个 bash for 循环也会停止。 我希望 bash 在下$id继续 migrate.pl。 脚本怎么能为for循环杀人? 我觉得这很令人惊讶,我无法使用任何其他机制重现它,我想知道它是否与我的问题有关。

这将尝试缓冲输出cat ids.list,并可能为大文件溢出。相反,你应该做一些类似的事情

while read -r line; do
    for id in $line; do
        echo "$id"
        bin/migrate.pl --id "$id"
    done
done < ids.list

相关内容

  • 没有找到相关文章

最新更新