Ich schreibe eine Batchdatei, um einige Vorgänge auf entfernten Computern in meinem Gebäude auszuführen. Sie sind alle mit demselben Präfix benannt, aber die Zahl am Ende ändert sich (01–65). Ich habe versucht, einem Online-Lernprogramm zum Erstellen einer Batch-Datei-Schleife basierend auf Zahlen zu folgen, und kam zu folgendem Ergebnis:
FOR /l %%N in (1,1,65) do (
set HOSTNAMETOUSE=prefix-%%N
ECHO %HOSTNAMETOUSE%
)
Dies funktioniert gut, nachdem es 10 erreicht hat, da es zweistellig ist. Was ich brauche, ist für die Zahlen 1-9
als erscheinen 01-09
, da dies unserem Benennungsschema entspricht. Grundsätzlich brauche ich für die ersten 9 Iterationen die einstellige Ziffer einer führenden Null. Wie kann ich dies mit Windows Batch-Dateien erreichen?
quelle
Ich würde das so machen:
Wie machst du einen Teilstring in Batchdatei (2 letzte Zeichen):
quelle
Verwenden ZtreeWin , navigieren Sie zum richtigen Verzeichnis, indem Sie drücken \ , dann drücken Eingeben um das Verzeichnis einzugeben, wo Sie können Ctrl T um die Dateien zu markieren, die Sie umbenennen möchten, und dann Ctrl R umbenennen in
????<0>*.*
Zum Beispiel:
Im obigen Beispiel
????
steht für die ersten 4 Zeichen (foo-),<0>
fügt an der 5. Stelle eine Null ein und*.*
stellt den Rest des Dateinamens (-bar.jpg) dar, der unverändert bleibt.Markieren Sie Ihre Dateien:
Umbenennen Ihrer Dateien:
ZTreeWin ist ein leistungsstarkes 32bit & amp; 64-Bit-Textmodusdatei & amp; Verzeichnismanager, der dem legendären XTreeGold (TM) nachempfunden ist, jedoch für heutige Betriebssysteme erweitert wurde.
quelle
Nichts Neues in @ dbenhams Antwort, nur ein paar Werte-Variablen, die von der Kommandozeile gesammelt wurden und hier zum leichteren Kopieren und Einfügen abgelegt wurden - alle @ dbenham-Credits stehen zur Verfügung:
quelle