Files
SnapOtter/apps/docs/ru/tools/image/bulk-rename.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

3.7 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Переименование нескольких файлов по шаблону и скачивание в виде ZIP. 2776dcc2f71c human a373c9cdebd6

Массовое переименование

Переименовывайте несколько файлов по шаблону с заполнителями для индекса, индекса с дополнением нулями и исходного имени файла. Возвращает ZIP-архив со всеми переименованными файлами.

Конечная точка API

POST /api/v1/tools/image/bulk-rename

Принимает multipart form data с несколькими файлами и полем JSON settings.

Параметры

Параметр Тип Обязательный По умолчанию Описание
pattern string Нет "image-{{index}}" Шаблон именования с заполнителями (макс. 1000 символов)
startIndex number Нет 1 Начальный номер индекса

Заполнители шаблона

Заполнитель Описание Пример
{{index}} Последовательный номер, начиная с startIndex 1, 2, 3
{{padded}} Последовательный номер с дополнением нулями 01, 02, 03
{{original}} Исходное имя файла без расширения photo, IMG_001

Исходное расширение файла всегда сохраняется.

Пример запроса

curl -X POST http://localhost:1349/api/v1/tools/image/bulk-rename \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo1.jpg" \
  -F "file=@photo2.jpg" \
  -F "file=@photo3.jpg" \
  -F 'settings={"pattern": "vacation-{{padded}}", "startIndex": 1}'

Это даёт: vacation-1.jpg, vacation-2.jpg, vacation-3.jpg

Использование исходного имени файла:

curl -X POST http://localhost:1349/api/v1/tools/image/bulk-rename \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@IMG_001.jpg" \
  -F "file=@IMG_002.jpg" \
  -F 'settings={"pattern": "2024-trip-{{original}}-{{index}}"}'

Это даёт: 2024-trip-IMG_001-1.jpg, 2024-trip-IMG_002-2.jpg

Пример ответа

Ответ представляет собой файл ZIP, передаваемый напрямую (не ответ JSON). Заголовки ответа:

Content-Type: application/zip
Content-Disposition: attachment; filename="renamed-a1b2c3d4.zip"

Примечания

  • Этот инструмент не обрабатывает изображения. Он только переименовывает файлы и упаковывает их в ZIP-архив.
  • Ширина дополнения нулями для {{padded}} определяется автоматически на основе общего количества файлов (например, для 100 файлов будет использоваться 3-значное дополнение: 001, 002 и т. д.).
  • Расширения файлов сохраняются из исходных имён файлов.
  • Имена файлов очищаются от небезопасных символов.
  • Необходимо предоставить хотя бы один файл.