Hola!
Comparto un Script que realice para ordenar la información de unos archivos en una carpeta de imágenes. El Script se debe ejecutar en la carpeta donde están las imágenes. Las edita, agregándoles metadatos, Info(Información), Ext(Extensión) y Plus(Adicional).
Los datos quedan ocultos en la imagen, aunque yo realice el Script, más para no tener un archivo "confuso" con los datos que requería, sino que la información estuviera en las imágenes. No por ocultar información, que también es una utilidad valida.
Permite, editar(aquellos archivos que no están en el archivo zegist.txt creado en las primeras ejecuciones, que guarda aquellos archivos ya editados) para agregar los metadatos mencionados. Y leer, los metadatos introducidos.
El Script podría optimizarse, para dar la opción de editar "uno a uno" o por linea de comandos. Pero me sirvió para trabajar con más de 100 imágenes, en las cuales debía introducir la información manualmente. Por eso estas dos opciones no están incluidas.
https://pastebin.com/7rAyN4fsLas imágenes se explican mejor.
Imágenes de prueba en una carpeta arbitraria (z.bat es el Script):
Ejecutamos:
La clave anti-estupidez es para evitar editar algo por error, por defecto es 0000:
Se edita archivo por archivo, con las etiquetas ya explicadas(se pueden añadir o quitar más manualmente):
En la primera ejecución en la carpeta pedira metadatos de z.txt(archivo temporal, durante la ejecución del Script), z.bat y zegist.txt. Solo lo hara en la primera ejecución. Luego quedan guardados en zegist.txt para no tomarlos en cuenta en próximas ejecuciones.
Archivo de registro de ediciones zegist.txt
Contenido:
Leer:
rem Segadorfelix DEMIAN_ABRAXAS
:edit
set /P clave="Inserte clave, anti-estupidez: "
)
set /P var="Escriba lo que necesite c; =
> "
set /P ver="Extension
(1-PNG
)(2-JPG
)(3-GIF
)(4-XCF
)(5-BAT
)(6-TXT
)(7-Carpet
): "
set /P adi="Adicional ;
) "
echo !var!>>%% style="color: #448888;">i:Info IF !ver!==7
echo CARPET
>>%%i:Ext
echo !adi!>>%% style="color: #448888;">i:Plus more<%%i:Info
more<%%i:Ext
more<%%i:Plus
)
)
:leer
echo Formato: [Archivo][Sección]
echo Sección:
(1-Información; 2-Extensión; 3-Adicional
) if !arch!==""
set arch=
%%j )
if !secc!==1
set secc=Info
if !secc!==2
set secc=Ext
if !secc!==3
set secc=Plus
(type zegist.txt| find "%arch%")>z.txt
)
more<!arch!:!secc!
set /P rpeat="Leer más?
(1-Sí, [ENTER]-Salir
)"
:salida
Me sirvió bastante, espero que sea de utilidad!