Ich versuche, den Befehl zu verwenden: "set n = 0" "für/f %% i in ('dir/a: d/b') tun (set/a n + = 1) & (set var% n% = %% i) "- Es setzt immer %% i in var0, aber ich kann sehen, dass" set n + = 1 "funktioniert. Wie kann ich "n" verwenden, um für jede Runde eine andere Variable zu erstellen?Verwenden Sie eine Zählvariable innerhalb eines FOR-Befehls in BATCH
Wie: var1, var2, var3 .. für jeden Ordner im Verzeichnis.
Unabhängig von der Antwort, ich brauche 'n' zu halten, wie oft der Befehl ausgeführt wurde (so dass das Programm die Menge der Ordner kennen wird) (Bearbeiten: Ja, ich weiß, mein Beispiel bietet dies, ich meinte, wenn jemand änderte den Code, der 'n' noch auf die Anzahl der Läufe gesetzt werden musste)
Edit: Ich habe die Seite überprüft: Arrays, linked lists and other data structures in cmd.exe (batch) script Und fand es nützlich, aber ich verstehe nicht wirklich die ordnungsgemäße Verwendung. Könnte mir bitte jemand helfen, indem ich meinen Code für die Arbeit mit DelayedExpansion festlege oder besser erläutere, wie man ihn implementiert?
Bearbeiten: Jungs! Dies ist kein Duplikat. Ich habe versucht, DelayedExpansion zu verwenden und konnte es nicht zum Laufen bringen. Mein Problem war Ursache von meinem Texteditor, den ich benutzte (NotePad ++), deshalb dachte ich, dass ich DelayedExpansion falsch verwendete und um Klärung bat. Am Ende habe ich es selbst repariert, nachdem die Antwort unten gezeigt hat, dass mein Code korrekt war.
Wenn ich einen Nickel für jedes Mal hatte, dass jemand [verzögerte Expansion] verwenden musste (http://stackoverflow.com/a/30284028/4158862), konnte ich in Rente gehen. – SomethingDark
Siehe: http://stackoverflow.com/questions/10166386/arrays-linked-lists-and-other-data-structures-in-cmd-exe-batch-script/10167990#10167990 – Aacini
'n' hält das richtige Anzahl der Läufe - setze 'echo% n%' nach der 'for' Schleife und du wirst sehen ... – aschipfl