如何使用cURL在shell中迭代远程文件的行?

时间:2014-04-04 19:08:51

标签: bash shell curl

我理解如何遍历本地文件中的行。但是远程文件怎么样?

while read NAME
do
    echo "$NAME"
done < curl -sL 'http://mylistofnames.com/list.html

如果这是本地的,我会用done < names.txt替换最后一行。我被困在遥远的地方。

2 个答案:

答案 0 :(得分:3)

管道输出:

curl -sL 'http://mylistofnames.com/list.html' | while read NAME
    do echo "$NAME"
done

使用流程替换:

while read NAME
    do echo "$NAME"
done < <(curl -sL 'http://mylistofnames.com/list.html')

答案 1 :(得分:3)

将curl命令放在bash process substitution

while read NAME
do
    echo "$NAME"
done < <(curl -sL 'http://mylistofnames.com/list.html')

管道也可以工作,但是如果在while循环中设置变量并且需要在while循环的范围之外,那么这个解决方案就变得必要了。