在文件的每一行上运行 wget 命令并下载文件(一次两个)

在文件的每一行上运行 wget 命令并下载文件(一次两个)

我有一个文件,其中包含要下载的文件的网址。

例如:

https://url-of/file1.zip
https://url-of/file2.zip
https://url-of/file3.zip
...

我当前用于下载文件的命令是:

wget --continue --tries=0 https://url-of/file.zip

但现在我需要一个 bash 脚本,它将从文件中读取 URL 并下载,一次两个。

到目前为止我想出的脚本是:

#!/bin/sh

cat file.txt |while read url
do
    wget --continue --tries=0 "$url"
done

但它下载单个文件。

我如何编辑它以便它一次下载两个文件。

答案1

您可以在 while 循环中放置多个读取命令。对于“一次两个”,但它们都在后台,然后等待它们完成

while read -r first && read -r second; do
    wget "$first" &
    wget "$second" &
    wait
done < input.file

但@muru 的评论更可取。

相关内容