Это разве большое кол-во? Вот 15 млн - большое! (было дело)
Так можно:
<?php
$urls = [
'http://foto.com/1.jpg',
'http://foto.com/2.jpg',
//...
];
foreach ($urls as $i => $url) {
file_put_contents(__DIR__ . "/{$i}.jpg", file_get_contents($url));
}
echo "OK\n";
Сохранить как file.php и запустить командой в консоли: php -f file.php
UPD 25.08.2020
Только сейчас случайно заметил:
там же настоящее имя файла получается file.txt.txt (т.к. расширение файла скрыто, что видно по именам фоток).
Т.е. надо было запускать команду так: wget -i c:/users/arsen/file.txt.txt
Или вернуть имя файла обратно к file (т.е. истинно оно будет как file.txt)