Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Kurze Frage zu der Batchsprache, die in XP mit .cmd endet

Alibaba / 2 Antworten / Baumansicht Nickles

Hallo ! Ich möchte ein Skript ändern, das unter der Eingabeaufforderung von XP ein Auswahlmenü zu einer DVD darstellt. Batchen war mir durchaus geläufig, aber mangels häufiger Anwendung ist Alles eingerostet. So suche ich eine Liste der vorhandenen Kommandos bzw. den Befehl, diese Anzuzeigen, und etwas spezieller Info/Tip zu dem vorhandenen Befehl "getkey 10 esc" (ohne "" und auch ohne was davor !). Da hängts eben, bzw. nicht. Da sollte dann eine Pause sein, um zum vorher aufgeführten Auswahlmenü eine Eingabe A - H) machen zu können. Stattdessen rasts weiter und startet jeweils mit der Ersatz-Funktion.

Ich habs schon, eingedenk der guten, alten DOS-Zeiten mit einigen xyz.cmd /h oder /? versucht, aber wohl noch nicht das Richtige gefunden. Wie gesagt, "eingerostet".

Kurzer Anstoss genügt, Danke

Alibaba

Win11 pro 64, Ryzen 5 5600G, Gigabyte B550 X V2, DDR4 16GB RAM, SSD Crucial 500 GB, MSI Geforce GTX 1050 2GT OC und 2xSATA3-HD + 1xeSATA-HD mit insges. 7,5 TB, NT Cooler Master Silent Pro Gold 1000W, Monitor Samsung Syncmaster 24"
bei Antwort benachrichtigen
mr.escape Alibaba „Kurze Frage zu der Batchsprache, die in XP mit .cmd endet“
Optionen
Re: Kurze Frage zu der Batchsprache, die in XP mit .cmd endet ............................................................
"getkey"? Ich kenne "choice" von früher und aktuell "set /p <varname>=<prompt>".

mr.escape
"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen
Alibaba mr.escape „Re: Kurze Frage zu der Batchsprache, die in XP...“
Optionen

Hallo und Dank fürs Echo !

Oh ja, choice ist mir auch noch ein Begriff. Bin natürlich auch schon im Keller gewesen und hab (hust !) in ein paar MSDOS-Büchern rumgeblättert. Aber half nix.

Das, was ich suche ist durchaus neueren Datums. Ist auf ner DVD, sowas wie einer Unattended. Aber leider rast das beim Booten so schnell durch, dass ichs nicht schaffe, den Pauseknopf schnell genug zu betätigen. Und leider ist das Auswahlkriterium bei Nichtangabe der Auswahl, also das, was sonst immer nach 10-20sec läuft, sofern man nix betätigt, nicht das, was ich will. Keine Ahnung, warum jetzt so, ist vielleicht mal gegangen und DVD hat nen Schlag, ich weiss es nicht. Habs mir so gedacht, die entsprechende .cmd-Datei auf HD zu kopieren, zu ändern und dann Alles neu zu brennen. Hier mal der kritische Teil:

.....
print F1) Boot from floppy
print F10) Reboot
print Esc) Boot from hard disk (10 seconds timeout)
print
print Enter a choice:
: mainkey
getkey 10 esc
onkey a goto 1
onkey b goto 2
...
Davor ist nur Auswahl, je "print Text" und dahinter "onkey abcde usw. goto 1234 usw". Getkey/onkey kenn ich zwar von C her, und durchs Googeln ist mir schnell klargeworden, dass es diesen Befehl massig gibt, aber ich wüsste zu gerne, wo der hier herkommt ? Ein Programm, dass zufällig getkey heisst, ist auch nicht im gleichen Verzeichnis der DVD. Die Befehlzeilenreferenz zu .cmd-Skripts gibt auch nichts her, wo also noch suchen ? Oder wie fragt man "heutzutage" gedrückte Tasten ab und reagiert darauf ? Und falls nicht dabei mitdefiniert, wie eine Pause von 10sec realisieren ?

Alibaba

Win11 pro 64, Ryzen 5 5600G, Gigabyte B550 X V2, DDR4 16GB RAM, SSD Crucial 500 GB, MSI Geforce GTX 1050 2GT OC und 2xSATA3-HD + 1xeSATA-HD mit insges. 7,5 TB, NT Cooler Master Silent Pro Gold 1000W, Monitor Samsung Syncmaster 24"
bei Antwort benachrichtigen