CLI AI

Renombrar cientos de archivos: del bucle `for` al lenguaje natural

2026-02-01

Los renombrados masivos son el tipo de cosa que se queda en una pestaña de Stack Overflow para siempre. La shell tiene media docena de formas — mv en un for, rename, prename, mmv, find -exec — y todas tienen pequeñas diferencias enloquecedoras entre distribuciones.

1. Añadir prefijo de fecha

clai
$ clai añade el prefijo de fecha de hoy a todos los .jpg→ for f in *.jpg; do mv -- "$f" "$(date +%Y-%m-%d)_$f"; done2026-04-27_DSC_0001.jpg2026-04-27_DSC_0002.jpg

El -- "$f" hace trabajo real — evita que mv interprete nombres que empiezan por guion como flags. Fácil de olvidar al escribir el bucle a mano.

2. Cambiar extensiones

clai
$ clai cambia .jpeg a .jpg en todos los archivos de esta carpeta→ for f in *.jpeg; do mv -- "$f" "${f%.jpeg}.jpg"; done

Pura expansión de parámetros de shell, sin herramientas externas. Funciona igual en Linux y macOS — cosa que rename no.

3. Normalizar espacios

clai
$ clai reemplaza espacios por subrayados en todos los nombres aquí→ for f in *\ *; do mv -- "$f" "${f// /_}"; donemy report.pdf -> my_report.pdfproject notes 2026.txt -> project_notes_2026.txt

El glob *\ * solo casa con archivos que contienen un espacio, así el bucle no corre si no hay nada que hacer. CliAI suele añadir esas pequeñas guardas.

Cuándo clai supera al one-liner

Para cualquier cosa más allá de estos patrones — cambio de mayúsculas, capturas regex, renombrado recursivo — pídelo en palabras y deja que el modelo arme el find -exec rename 's/.../...' '{}' + o mmv correcto. Vas a leer el resultado de todas formas; el bucle inspect-then-run es la red.

Ver también