使用文本文件中的字符串卷曲和重命名图像

Curl and rename images using string from text file

我有一个包含 URL 列表的 TXT 文件,例如:

website/media/945746/ui4Q9EJoUEmVLtUNhtRX.JPG John.JPG
website/media/226251/6epk0CUwnhofAjZMP2xp.JPG Kelly.JPG
website/media/658552/Q4qQgLF2bvVwxI37jgQG.JPG Sharon.JPG
website/media/856214/8xlBzvlG4TNfKgo86gM6.JPG Bill.JPG

我正在使用 xargs -n 1 curl -O < urls.txt 下载图片。

如何下载文件,以便 ui4Q9EJoUEmVLtUNhtRX.JPG 重命名为 John.JPG6epk0CUwnhofAjZMP2xp.JPG 重命名为 Kelly.JPG

只需将两个字段的顺序颠倒即可:

while read -r url name ; do
    curl -o $name $url
done < urls.txt

如果要并发下载,请让每个 curl 命令 运行 在后台运行并 wait 让它们完成。

PS:-O 表示 wget 而非 curl 的输出文件名。 curl 改用 -o

这对我有用 glee8e 答案和解决方案 wojciiiParallel download for a list of urls and renaming

#!/bin/bash while read -r URL FILENAME; do curl -o "$FILENAME" "$URL" done < urls.txt