Benennen Sie die Datei basierend auf den Daten in der Datei um

Benennen Sie die Datei basierend auf den Daten in der Datei um

Problem

Ich hoffe, jemand kann mir helfen, eine Batch-Datei zu erstellen, um Textdateien in einem bestimmten Ordner umzubenennen und Daten aus der Datei aufzunehmen. Es ist eine durch Sternchen getrennte Datei und ich muss die Daten aus dem 12. Feld verwenden.

Lösung

  • Hier ist ein Batch-Skript.

 # Script Rename12.txt var string ordner var string liste, datei, inhalt, feld12 if ($ folder == "") exit 1 "Fehler 1: Ordner nicht angegeben." endif cd $ ordner # Sammle eine Liste von Dateien lf -n "*"> $ list # Gehe die Dateien nacheinander durch ($ list "") do # Hole die nächste Datei lex "1" $ list> $ file # Get Der Inhalt der Datei wird in eine Zeichenfolgenvariable umgewandelt. cat $ file> $ content # Ermittelt den Wert nach dem 11. Stern und vor dem nächsten Stern. stex "^ * ^ 11 [" $ content> $ field12; stex "[^ * ^" $ field12> null # Benenne die Datei in das Feld 12 um. System umbenennen ("" "+ $ file +" ") (" "file _" + $ field12 + "") fertig 
    • Skript ist in Beißer-Skript. Speichern Sie das Skript in der Datei C: /Scripts/Rename12.txt und führen Sie diesen Befehl in Biter-Skripten aus.

 Skriptordner "C: /Scripts/Rename12.txt" ("C: / test") 
    • Es werden alle Dateien im Ordner C: / test umbenannt.
    • Bitte testen Sie zuerst auf einem Testordner.

Hinweis

Gelöst von Richard.Williams

Vorherige Artikel Nächster Artikel

Top-Tipps