如何使用bash参数expension从文件中的分隔行构建URL地址?

时间:2019-05-19 17:29:19

标签: bash url wget

如何使用文件中的URL参数在bash shell中循环执行wget命令。

文件以空格分隔:

$ cat parameters.txt
ANLA 830093 37227 2018/12/23 C14111
ANLA 2647724 106308 2018/12/23 C301205
BEDER 2638573 94596 2018/12/12 INDISP
.....

URL请求使用get方法,因此我想从一行设置参数并使用它们构建URL。

$ for i in (cat parameters.txt);  .. ? setting $p1,$p2,$p3,$p4 ? .. ;wget -qO- "http://example.com/planning.dll?Id=$p1&Prest=$p2&Time=$p3&Date=$p4" | ..processings ... >>output.txt; done

参数扩展$ {....}应该是线索,但是如何?还是其他答案?

我希望使用 cut -d“” -f“ colomn” 文件命令的方式。

1 个答案:

答案 0 :(得分:1)

首先,请确保您知道how to loop over lines of a file in bashWhy don't read lines with for

使用while read ...


除此之外,我将使用read -a将参数解析为 array

while read -r -a p ; do
    echo wget  -qO- "http://example.com/planning.dll?Id=${p[1]}&Prest=${p[2]}&Time=${p[3]}&Date=${p[4]}"
done < parameters.txt

(如果可以,请移走echo前面的wget