Как скачать много SVG за один раз: бот и Terminal

У меня был список ссылок на SVG-иконки, которые нужно было скачать на компьютер. Открывать каждую, копировать код в Figma и экспортировать обратно оказалось слишком долго. Ниже — способ скачать файлы по готовому списку ссылок и вариант с моим ботом.

Я написал GetSVG Bot, который помогает получать SVG с сайта без ручного копирования каждой иконки. Если уже есть список прямых ссылок на файлы, подойдёт Terminal.

Что понадобится

Этот способ для macOS и списка прямых URL на SVG-файлы. Встроенные в HTML элементы <svg> и ссылки на элементы спрайта #icon-name команда не извлечёт: сначала нужны адреса отдельных файлов.

Подготовить wget

Откройте Terminal. Если Homebrew уже установлен, переходите к установке wget. В остальных случаях возьмите установку с официального сайта Homebrew и выполните её инструкции, включая добавление brew в PATH, если установщик это предложит.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

После установки Homebrew установите wget:

brew install wget

Сохранить ссылки в файл

Создайте отдельную рабочую папку. В неё попадут список ссылок и скачанные иконки:

mkdir -p "$HOME/Downloads/svg-batch"
cd "$HOME/Downloads/svg-batch"
touch links.txt
open -e links.txt

В TextEdit вставьте по одной полной ссылке на каждой строке и сохраните файл как обычный текст. Если редактор предлагает формат RTF, выберите «Формат → Преобразовать в простой текст». Имя файла должно остаться links.txt, без дополнительного расширения.

Формат списка такой; домен и пути ниже — примеры, замените их своими адресами:

https://example.com/icons/arrow.svg
https://example.com/icons/check.svg

Скачать SVG одной командой

wget --input-file=links.txt --directory-prefix=icons

wget прочитает строки из links.txt и сохранит файлы в папку icons внутри рабочей папки. Открыть её можно так:

open icons

Если скачивание не получилось

  • command not found: wget. Проверьте, завершилась ли установка wget и доступны ли команды Homebrew в новом окне Terminal.
  • No such file or directory для links.txt. Выполните pwd и ls: текущая папка должна содержать links.txt. В имени файла нет пробела между точкой и расширением.
  • 403, 404 или вместо SVG скачалась HTML-страница. Откройте проблемную ссылку в браузере. Файл может требовать авторизацию, быть удалён или запрещать автоматическое скачивание. Не считайте такой ответ готовой иконкой.
  • Нужна одна иконка, встроенная в страницу. Подойдёт копирование SVG из браузера в Figma.

Скачивание файла не меняет права на него. Для использования в своём проекте проверьте лицензию или получите разрешение правообладателя.