@Jigo fehlt da nicht noch etwas?
Vielleicht noch als kleine Erklärung für die nicht so alten Hasen hier:
Mit dem Befehl "echo" wird ja eine Textzeile auf den Bildschirm ausgegeben. Das @ sorgt dafür, dass der Befehl selber nicht mit ausgegeben wird.
Kann man durch ein "Echo off" (besser @Echo off ) am Anfang weglassen.
Damit kann man sein Menü zeichnen, so wie im Beispiel oben.
Ich würde das dann weiter über den Befehl "Choice" lösen:
choice Ihre Auswahl: /c:01234567 /n
if errorlevel 8 goto 8
if errorlevel 7 goto 7
if errorlevel 6 goto 6
if errorlevel 5 goto 5
if errorlevel 4 goto 4
if errorlevel 3 goto 3
if errorlevel 2 goto 2
if errorlevel 1 goto ENDE
:8
7.bat
:7
6.bat
:6
5.bat
:5
4.bat
:4
3.bat
:3
2.bat
:2
1.bat
:ENDE
cd\
cls
Alles anzeigen
choice Ihre Auswahl: /c:01234567 /n
Hier wird auf einen Auswahl gewartet, zulässig sind dafür die Zahlen 0 bis 7. Die getippte Zahl wird hinter den Text "Ihre Auswahl" geschrieben. /n sorgt für einen Zeilenumbruch am Ende.
Möglich wäre auch /c:ABCD usw. Wenn man keine zulässige Auswahl mit /c festlegt, macht Choice eine einfache Ja/Nein Abfrage. Akzeptiert also nur Y und N als Eingaben.
Der Aufruf von Choice gibt die getroffene Auswahl als "Fehlercode" an DOS zurück. Deshalb kann man die mit "if errorlevel" abfragen.
1 ist dabei immer die erste mögliche Eingabe. Hier also die 0.
Es wird dann zum jeweiligen Label gesprungen und im Beispiel wird dann jeweils eine andere Batchdatei 1.bat bis 8.bat gestartet. Du könntest aber auch direkt unter dem Label ein Spiel aufrufen o.ä.
Wird die 0 gewählt, wird in meinem Beispiel zum Label ENDE gesprungen, ins Stammverzeichnis gewechselt und der Bildschirm. gelöscht.