Rinominare immagini in blocco con schema e numerazione
Con il modello gallery-{counter:3}{ext} e partenza da 7, IMG_4102.JPG, IMG_4103.JPG e detail.PNG diventano gallery-007.JPG, gallery-008.JPG e gallery-009.PNG. Riceve un elenco verificabile dei nomi vecchi e nuovi, e nessun file viene toccato. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Nomi dei file
- IMG_4102.JPG, IMG_4103.JPG, detail.PNG
- Schema
- gallery-{counter:3}{ext}
- Inizio
- 7
- Quantità
- 3
Trasformi un elenco ordinato di nomi di immagini in una sequenza chiara e coerente prima di rinominare, caricare, archiviare o pubblicare i file effettivi. Lo strumento può conservare ogni estensione originale, riutilizzare il nome di base e completare i numeri per un ordinamento naturale. Calcola soltanto i nomi: non legge, carica, sposta o modifica alcuna immagine, così Lei può controllare facilmente le modifiche proposte prima di intervenire sul file system.
Scelga un modello chiaro per i nomi
Inserisca {counter} nella posizione del numero progressivo, per esempio prodotto-rosso-{counter}{ext}. Usi {counter:3} per una larghezza minima fissa che produca 001, 002 e 003. La larghezza può variare da una a venti cifre e un numero già più lungo non viene mai troncato.
Aggiunga {ext} per mantenere esattamente l’estensione di ciascun file sorgente, comprese maiuscole e minuscole, oppure {name} se il nome di base originale deve rimanere nel risultato. Il testo letterale resta invariato. Poiché il risultato è un nome di file e non un percorso, le barre normali e inverse generate vengono rifiutate.
L’operazione rimane così limitata ai nomi e non può cambiare directory in modo silenzioso. Controlli la mappatura restituita prima di applicarla con un file manager, uno script, una pipeline di risorse o una mediateca.
Gestisca ordine, numerazione e duplicati
L’elenco di input stabilisce l’ordine. Il primo file riceve il valore di start, il secondo l’intero successivo e l’elaborazione prosegue senza ordinare né interpretare date nascoste nei nomi. Il risultato è prevedibile quando l’elenco rispecchia già l’ordine di uno scatto, di un foglio di calcolo, di una selezione o di una sequenza editoriale.
Il valore iniziale predefinito è 1; sono ammessi anche 0 e altri interi sicuri non negativi per i sistemi con numerazione da zero. Ogni nome generato viene controllato per individuare collisioni. Se invece lo stesso nome viene prodotto per due immagini, la richiesta non riesce e segnala che manca il contatore.
Anche gli schemi con contatore vengono verificati, perché input ripetuti o schemi che ignorano differenze importanti possono eccezionalmente causare collisioni. In caso di errore non viene restituita una mappatura parziale, quindi una risposta riuscita rappresenta sempre un piano completo.
Utilizzi la mappatura in sicurezza nel flusso reale
Questa capacità calcola un piano di rinomina e volutamente non interviene sui file. Ogni risultato associa il nome originale alla sostituzione proposta, consentendo a una persona o a un programma successivo di esaminare tutte le modifiche. Mantenga {ext} quando un lotto mescola JPEG, PNG, WebP o estensioni con maiuscole diverse: il segnaposto copia il suffisso della singola sorgente invece di imporre un formato.
Rinominare non converte i dati dell’immagine, quindi cambiare il testo dell’estensione non modifica il formato sottostante. Gli input devono essere nomi, non percorsi, e sono limitati a 255 caratteri. Un lotto può contenere fino a 10,000 elementi.
Per eseguire l’operazione, usi la mappatura con uno strumento che rilevi destinazioni esistenti e rinomini in due passaggi quando vecchi e nuovi nomi si sovrappongono. Lo stesso input restituisce sempre lo stesso risultato, senza caricamenti, rete, casualità o dipendenza temporale.
Casi d'uso
Ordinare un servizio fotografico
Converta i nomi generati dalla fotocamera in una serie ordinata e riempita, conservando ogni estensione originale.
Uniformare le immagini dei prodotti
Crei nomi prevedibili per le risorse del negozio da un elenco ordinato di angolazioni e varianti.
Anteprima della rinomina di un archivio
Generi e controlli la mappatura completa dai vecchi ai nuovi nomi prima di modificare qualsiasi file.
Domande frequenti
Quali segnaposto del contatore sono supportati?
Usi {counter} per un numero senza riempimento o {counter:width}, come {counter:4}, per completare con zeri fino alla larghezza minima.
Come posso conservare l’estensione di ogni immagine?
Copia l’ultima estensione, incluso il punto iniziale e l’uso originale delle maiuscole.
Lo strumento rinomina o carica le mie immagini?
No. Restituisce soltanto una mappatura deterministica da ogni nome originale al nuovo nome proposto.
La numerazione può partire da 0 o da un altro numero?
Sì. Il primo file riceve il valore iniziale che sceglie e ogni file successivo il numero seguente. Il valore predefinito è 1, e sono accettati 0 o qualsiasi altro intero per i sistemi che contano da zero.
Che cosa succede se due nomi nuovi coincidono?
Non riceve un piano a metà. Ogni nome generato viene controllato e, se due coincidono, l'operazione si ferma spiegando che manca il segnaposto del contatore, così può correggere il modello prima di rinominare.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/image/batch-rename-pattern \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"filenames":["IMG_4102.JPG","IMG_4103.JPG","IMG_4104.PNG"],"pattern":"gallery-{counter:3}{ext}"}'const res = await fetch("https://api.kit.forhosting.com/image/batch-rename-pattern", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"filenames": [
"IMG_4102.JPG",
"IMG_4103.JPG",
"IMG_4104.PNG"
],
"pattern": "gallery-{counter:3}{ext}"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/batch-rename-pattern",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"filenames": [
"IMG_4102.JPG",
"IMG_4103.JPG",
"IMG_4104.PNG"
],
"pattern": "gallery-{counter:3}{ext}"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/batch-rename-pattern", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"filenames":["IMG_4102.JPG","IMG_4103.JPG","IMG_4104.PNG"],"pattern":"gallery-{counter:3}{ext}"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"filenames":["IMG_4102.JPG","IMG_4103.JPG","IMG_4104.PNG"],"pattern":"gallery-{counter:3}{ext}"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/batch-rename-pattern", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"filenames": [
"IMG_4102.JPG",
"IMG_4103.JPG",
"IMG_4104.PNG"
],
"pattern": "gallery-{counter:3}{ext}"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.batch_rename_pattern",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_items | 10000 |
max_filename_chars | 255 |
max_pattern_chars | 255 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Fornisca uno schema con un segnaposto per il contatore, scelga il numero iniziale e riceva una mappatura esplicita dal nome originale a quello nuovo.
Definisca uno schema chiaro per i nomi
Una buona rinomina in blocco parte da uno schema che descrive la raccolta, non la fotocamera o il telefono che l’ha creata. Uno schema può ripetere lo stesso segnaposto.
Gestisca ordine, numerazione e duplicati
Uno schema senza contatore è valido se gli altri segnaposto producono nomi distinti; per esempio, {name}-approvato{ext} normalmente rimane univoco.
Utilizzi la mappatura in sicurezza nel flusso reale
La richiesta API costa $0.002.
Domande tecniche
Che cosa accade se due nuovi nomi sono identici?
L’intera richiesta non riesce. Se lo schema è privo di contatore, l’errore invita espressamente ad aggiungerlo.
Quanto costa una richiesta API?
Ogni richiesta costa $0.002, sia che il contatore inizi da zero sia che utilizzi il riempimento.