下载多个文件,并使用 wget 指定输出文件名

下载多个文件,并使用 wget 指定输出文件名

我正在使用从 URL 下载文件列表的选项wget-i

不过,我也想指定这些文件的保存名称。

我看到您可以使用 对单个文件执行此操作-O,并可以使用 指定目录-P;是否可以下载文件列表并为每个文件指定文件名?

答案1

获得

可能不适用于 wget

perl

就像是 ...

perl -MLWP::Simple -lane 'getstore($F[0],$F[1])' urls_and_filenames.txt

对于 Windows,使用“而不是’

卷曲

我注意到curl有一些可能相关的选项

-K,--配置

指定从哪个配置文件读取 curl 参数。

--url

指定要获取的 URL。当您想在配置文件中指定 URL 时,此选项非常方便。

此选项可使用任意次数。要控制此 URL 的写入位置,请使用 -o、--output 或 -O、--remote-name 选项。

-o, --output <file>

将输出写入到 stdout 而不是 stdout。如果您使用 {} 或 [] 来获取多个文档,则可以在说明符中使用“#”后跟数字。该变量将被替换为正在获取的 URL 的当前字符串。例如:

curl http://{one,two}.site.com -o "file_#1.txt"

或者使用几个变量,如:

curl http://{site,host}.host[1-5].com -o "#1_#2"

您可以根据您拥有的 URL 数量多次使用此选项。

答案2

不是wget,但aria2c支持这一点https://aria2.github.io/manual/en/html/aria2c.html#input-file

aria2c -i fileList.txt

例如fileList.txt的内容为:

http://server/file.iso http://mirror/file.iso
  dir=/iso_images
  out=file.img
http://foo/bar

如果使用选项执行 aria2 -i fileList.txt -d /tmp,则将file.iso保存为并从和/iso_images/file.img下载。文件从 下载并保存为。http://server/file.isohttp://mirror/file.isobarhttp://foo/bar/tmp/bar

相关内容