Renombrar archivo basado en datos en archivo

Renombrar archivo basado en datos en archivo

Problema

Espero que alguien pueda ayudarme a crear un archivo por lotes para cambiar el nombre de los archivos de texto en una carpeta específica para incluir datos del archivo. Es un archivo delimitado por asteriscos y necesito usar los datos del 12 ° campo.

Solución

  • Aquí hay un script por lotes.

 # Script Rename12.txt var cadena carpeta var cadena lista, archivo, contenido, campo12 si ($ carpeta == "") sale 1 "Error 1: carpeta no especificada." endif cd $ folder # Recopile una lista de archivos lf -n "*"> $ list # Recorra los archivos uno por uno mientras ($ list "") do # Obtenga el siguiente archivo lex "1" $ list> $ file # Get El contenido del archivo en una variable de cadena. cat $ file> $ content # Obtenga el valor después del 11 asterisco y antes del siguiente asterisco. stex "^ * ^ 11 [" $ content> $ field12; stex "[^ * ^" $ field12> null # Renombrar archivo al campo 12. cambio de nombre del sistema ("\" "+ $ archivo +" \ "") ("\" archivo _ "+ $ field12 +" \ "") hecho 
    • La secuencia de comandos está en secuencias de comandos de bits. Guarde el script en el archivo C: /Scripts/Rename12.txt, ejecute con este comando en scripts de biter.

 carpeta "C: /Scripts/Rename12.txt" ("C: / test") 
    • Cambiará el nombre de todos los archivos en la carpeta C: / test.
    • Por favor, prueba primero en una carpeta de prueba.

Nota

Resuelto por Richard.Williams

Artículo Anterior Artículo Siguiente

Los Mejores Consejos