1

我有一个制表符分隔feadList,有两列(date+ id):

20130509    1319
20130510    1320
20130511    1321
20130512    1322
20130513    1323

在阅读每一行时,我想使用来自 web 链接的数据来卷曲,id然后将其保存到文件中date作为文件名。现在我有类似的东西:

for feed in $feadList
do
    awk -F "\t" '{print date=$1, seq=$2}' $feed
    curl "$WebLink/$seq/data" > $date
done

但显然它不起作用。小伙伴们对此有所了解吗?谢谢!

4

2 回答 2

5

另一种方法是

while read date seq
do
    curl "$WebLink/$seq/data" > $date
done < feadList
于 2013-05-14T23:47:18.013 回答
2
while read date seq
do
    curl "$WebLink/$seq/data" > $date
done < feadList

read命令(内置 shell)将数据行拆分为分配给$date和的两个字段$seq,然后您可以在循环体中使用它们。如果一行上有额外的字段,它们也会被记录下来$seq

您的 shell 符号根本无法按您的需要工作。循环将使用变量中的值执行一次$feadList(与feadList文件名不同)。该awk命令将为每个输入行输出一行到标准输出,其中包含拆分数据。但这将是简单的输出...不会对 shell 变量$date和进行赋值$seq,并且该curl命令不会按预期工作。

于 2013-05-14T23:47:45.217 回答