Frage von JavaEsel, 25

Batch Variablen der Reihe nach aufrufen?

Hallo ich habe eine weitere Batch Frage.

Ich habe jede menge Variablen (var1,var2,var3.....) und einen Counter. Ich möchte wenn der Counter 1 zeigt, dass die Variable var1 aufgerufen wird, und wenn der Counter 345 zeigt, dass die Variable var345 aufgerufen wird.

Allerdings brauche ich keine 3000 Zeilen If-befehle

"if %Counter %==1 echo var1

if %Counter %==76 echo var76

if %Counter %==234 echo var234 ...."

Antwort
von OGGY16, 16

mach dir nen array wo du deine varialen reinpackst. ggf. jede einzelne in ein objekt kapseln damit die referenz erhalten bleibt. dann einfach echo array.get(counter) oder array[counter] je nach sprache

Kommentar von OGGY16 ,

oder über reflection, wenn du es wirklich über den variablennamen machen willst.

Kommentar von Tschoo ,

In einer Kommandoprozedur (cmd/batch) ????

Antwort
von maximilianus7, 13

hilft dir das?:

setlocal EnableDelayedExpansion
set i=3
set var3=valof3
echo !var%i%!

du kommst damit allerdings an eine grenze, was die möglichkeiten des batch-scriptings angeht. vielleicht solltest du dir mal vbs (visual basic script) anschauen. dort könntest du dann tatsächlich mit arrays arbeiten.

(entschuldige oggy, er hat deine frage nicht richtig gelesen)

Kommentar von OGGY16 ,

Ja genau ich bin von Java ausgegangen, weil du javaEsel heißt.

Keine passende Antwort gefunden?

Fragen Sie die Community