下载具有不同最终名称的多个文件

时间:2013-05-14 09:19:50

标签: linux macos bash curl console

好的,我需要的是相当简单的。

我想通过cURL下载很多不同的文件(来自特定服务器),并希望将每个文件保存为磁盘上的特定新文件名。

是否存在实现该方法的现有方式(参数或其他方式)?你会怎么做呢?


(如果有选项可以在文本文件中输入所有URL - filename对,每行一个,并获得cURL来处理它,那将是理想的选择)

E.g。

http://www.somedomain.com/some-image-1.png  --> new-image-1.png
http://www.somedomain.com/another-image.png --> new-image-2.png
...

1 个答案:

答案 0 :(得分:0)

好的,我自己想出了一个聪明的方法。

1)创建一对文本文件,其中包含URL(下载内容)和Filename(如何将其保存到磁盘),用逗号(,)分隔,每个一对线。并将其另存为input.txt

2)使用以下简单的BASH脚本:

while read line; do
    IFS=',' read -ra PART <<< "$line";
    curl $PART[0] -o $PART[1];
done < input.txt

*尚未对其进行彻底测试,但我认为它应该可行。