2016-07-25 35 views
1

Ich versuche, eine Batch-Datei zu schreiben, die Benutzereingaben nehmen und aus einer Liste gespeicherter Variablen aufrufen wird.cmd verwenden Eingabe als Variable

Ich habe bereits herausgefunden, wie man das mit IF-Anweisungen macht, aber ich habe das Gefühl, dass es einen saubereren Weg geben muss!

Was für Suche ist so etwas wie dieses:

Set A=1 
SET P%A%= Hello 

* Das funktioniert und kann hallte werden:

ECHO %P1% 

* Ausgabe: Hallo

Set /P Prompt Input Selection: 
Prompt=1 
SET Var=%Prompt% 

ECHO %P(!var!)% 

* Im Idealfall würde dies gleich sein wie:

ECHO %P1% 

oder was auch immer die Aufforderung Wert für den gewünschten Wert von% a%, aber ich kann diesen Teil

Antwort

0

Prompt=1 sollte set Prompt=1

ECHO %P(!var!)% sollte echo !p%x%! (mit setlocal enabledelayedexpansion natürlich) sein zur Arbeit nicht bekommen