使用 cURL 保存多个文件

使用 cURL 保存多个文件

我在 .txt 文件中有一个 URL 列表 - 我应该从中获取内容。为了实现这一点,我决定使用 cURL。使用xargs curl < url 列表.txt,我可以在我的终端中显示 URL 的所有内容。使用curl -o myFile.html www.example.com,我只能保存 1 个文件。

还有curl -O URL1 -O URL2但对于我来说这需要花费太长时间。

我如何保存多个文件立刻

编辑:

#!/bin/bash
file="filename"

while read line
do 
  curl -o "$line.html" "$line"
done < "$file"

我运行了上面的 bash 屏幕,发生了以下情况:

在此处输入图片描述

答案1

建立一个 bash 脚本来循环遍历你的 URL 列表并执行 curl 命令。

#!/bin/bash
file="filename"

while read line
do 
  outfile=$(echo $line | awk 'BEGIN { FS = "/" } ; {print $NF}')
  curl -o "$outfile.html" "$line"
done < "$file"

答案2

虽然最简单的方法是按照@dan08的建议创建一个循环脚本,但如果您需要下载的链接是连续的,例如:

http://www.host.com/page-1.html
http://www.host.com/page-2.html

等等,你可以像这样使用 curl 命令:

curl "http://www.host.com/page-[1-30].html" -o "# 1.html" #(30 is indicative)

这将连续创建文件,使用当前范围的值代替文件名中的 #1。

相关内容