【发布时间】:2021-09-17 15:22:50
【问题描述】:
我有一个文本文件,每行都有一个 url 和所需的文件名(用空格分隔)。我正在循环浏览此文本文件并下载 url 并使用 wget 将其保存为所需的名称:
while IFS=' ' read a b
do wget $a -O $b
done < list.txt
问题是我的列表包含近 9000 个文件,因此逐个下载它们需要很长时间。反正我可以同时下载它们吗?
【问题讨论】:
-
* wget $a -O $b & *?
-
顺便说一句,在使用 GNU 工具的系统上,
xargs -P是你的朋友。 -
xargs -a list.txt -n 2 -P 4 -I{} wget "{}" -O "{}" -
@LéaGris 我不确定这段代码是否将 url 与文件名分开,因为我收到一条错误消息,指出文件未找到,因为它刚刚合并了每一行
标签: linux bash shell parallel-processing wget