Ich habe mehrere hundert Dateien auf eine bestimmte Weise benannt, die umbenannt werden müssen, indem Sie das 13-15. Zeichen je nachdem, was das sechste Zeichen ist, ersetzen. Ich war nicht in der Lage, etwas zu erstellen, das den 6. Charakter lesen wird, aber lasse es in Ruhe und ändere nur die 13-15.Windows-Batch-Datei zum bedingten Umbenennen machen
Die Dateien haben das folgende Format.
2016-A124578_XYZ_moretext.ext
2016-B345654_XYZ_morerandomtext.ext
2016-B235689_XYZ_moredifferenttext.ext
2016-A789945_XYZ_moretext.ext
2016-C547821_XYZ_moretext.ext
Das Skript muss das 6. Zeichen (A, B oder C) und ersetzen Sie die XYZ mit AAA oder BBB oder CCC in Abhängigkeit von dem Brief lesen. Der Rest des Dateinamens muss identisch sein.
2016-A124578_XYZ_moretext.ext becomes 2016-A124578_AAA_moretext.ext
2016-B345654_XYZ_morerandomtext.ext becomes 2016-B345654_BBB_morerandomtext.ext
Ist es möglich, diese Art von Skript zu machen? Würde RegEx der beste Weg sein, es zu versuchen?
Wenn Sie noch nicht wissen, wie Batch-Dateien zu schreiben, selbst einen Gefallen tun und lernen Powershell stattdessen. Etwas zu tun, was im Batch etwas kompliziert ist, ist * schmerzhaft *. Je früher jeder vergisst, desto besser. Powershell ist so viel besser, und es ist auf modernen Windows-Systemen vorinstalliert. Es unterstützt auch Regex - Batch nicht. – Blorgbeard
PowerShell ist unnötig ausführlich und ist nicht standardmäßig aktiviert. Wenn Sie nicht einen Tipp-Fetisch haben, bleiben Sie bei Batch. – SomethingDark
Es ist nicht die beste Sprache da draußen, aber wenn Sie versuchen, tatsächliche Programme zu schreiben, ohne etwas Neues zu installieren, ist es Powershell oder Batch. Batch ist ein schrecklicher Haufen von rückwärtskompatiblen Hacks auf dem Hack, und die Syntax spiegelt das wider. Powershell ist manchmal sehr ausführlich, aber es gibt viele IDEs mit Autovervollständigung dafür. Batch ist in Ordnung für einfache Listen von Befehlen. Alles komplizierter und es ist einfach schrecklich. Meiner Meinung nach. – Blorgbeard