我使用wget mac终端从文件中下载图像,其中每个图像网址都是自己的行,并且与此命令完美配合:
cut -f1 -d, images.txt | while read url; do wget ${url} -O $(basename ${url}); done
但是我想指定它保存的输出文件名,而不是使用基本名称。文件名在下一列中指定,用空格或逗号分隔,我无法弄清楚如何告诉wget使用第二列作为-O名称的名称。
我确定这是对上述命令的简单更改,但在此处和其他网站上阅读了数十个不同的帖子后,我无法弄明白。任何帮助,将不胜感激。
答案 0 :(得分:0)
如果您使用空格作为分隔符,则非常简单:
cat images.txt | while read url name; do wget ${url} -O ${name}; done
说明:您可以阅读两个(${url}
和${url}
),而不是每行只读一个变量(${name}
)。第二个是您的本地文件名。我假设您的images.txt
文件看起来像这样:
http://cwsmgmt.corsair.com/newscripts/landing-pages/wallpaper/v3/Wallpaper-v3-2560x1440.jpg test.jpg