Gi nytt navn til fil basert på data i filen
Gi nytt navn til fil basert på data i filen
Utgave
Jeg håper noen kan hjelpe meg å lage en batchfil for å omdøpe tekstfiler i en bestemt mappe for å inkludere data fra filen. Det er en stjerneavgrenset fil, og jeg må bruke dataene fra det 12. felt.
Løsning
- Her er et batch script.
# Skript Rename12.txt var strengmappe var strengliste, fil, innhold, felt12 hvis ($ mappe == "") avslutte 1 "Feil 1: mappe ikke spesifisert." endif cd $ folder # Samle en liste over filer lf -n "*"> $ list # Gå gjennom filer en etter en mens ($ list "") gjør # Hent den neste filen lex "1" $ list> $ file # Get filens innhold i en strengvariabel. cat $ file> $ content # Få verdien etter 11. stjerne og før neste stjerne. stex "^ * ^ 11 [" $ content> $ field12; stex "[^ * ^" $ field12> null # Gi nytt navn til 12-feltet. systemnavn ("\" "+ $ file +" \ "") ("\" fil _ "+ $ field12 +" \ "") gjort
- Skriptet er i biter scripting. Lagre skriptet i fil C: /Scripts/Rename12.txt, kjør med denne kommandoen i biter scripting.
skript "C: /Scripts/Rename12.txt" mappe ("C: / test")
- Det vil gi nytt navn til alle filer i mappe C: / test.
- Vennligst prøv først på en testmappe.
Merk
Løst av Richard.Williams