igelchen 10 Geschrieben 16. März 2008 Melden Geschrieben 16. März 2008 Hallo Leute ich habe 2 Fragen, eine wo ich Frage inner cmd-Datei Stellen möchte und eine wo ich die Antwort schon weiss, aber keine zweite Datei für haben möchte. 1.) Ich arbeite seit Dos 5.0 mit *.bat und ab NT4 mit *.cmd-Dateien und habe schon eine große Sammlung. Da ich kein Programmierer bin, kann ich keine andere Scriptsprache und ich bleibe bei dem was ich kann. Abfragen waren bisher nur die um "Pause" zu beenden oder um mit "[strg][c]das Script zu beenden oder um auf Errorlevels zu reagieren. Jetzt suche ich ne Möglichkeit nach Eingabe zu einem Punkt im Script zu springen. Zb. zu Beginn einen Scriptabschnittes möchte ich fragen ich ob ich den ausführen soll oder zum nächsten springen, ohne Nutzung von externen Dateien. 2.) In *.cmd erwarten manche Prgramme eine Benutzereingabe wie "y", "n" usw. z.b. wenn ich im chkdsk fürs Laufwerk C: ausführen will und geht ja nicht und dann kommt die Frage ob man das nach dem Neustart machen möchte. Bisher hatte ich dann eine Textdatei geschrieben wo nur der geforderte Buchstabe drin stand und es über "<" reingebracht. gibt es auch eine Lösung innerhalb der cmd-Datei ohne zweite Datei? Liebe Grüße vom Stacheltierchen
LukasB 10 Geschrieben 16. März 2008 Melden Geschrieben 16. März 2008 Ist der Befehlt "choice" das was du suchst?
ZeroKnowledge 11 Geschrieben 16. März 2008 Melden Geschrieben 16. März 2008 zu 1.: SET /P Variable=[EingabeaufforderungZeichenfolge] echo 1) Weiter echo 2) Beenden echo. set /p Ret=Deine Auswahl: If %Ret% == 1 goto _weiter If %Ret% == 2 goto _ende :_weiter :_ende zu 2.: echo <ANTWORT> | <BEFEHL> echo j | copy file1 file2
igelchen 10 Geschrieben 16. März 2008 Autor Melden Geschrieben 16. März 2008 @LukasB choice gibts standardmäßig nicht bei windows xp @ZeroKnowledge zu 1.) ja das was ich suche .. wie sieht es mit der Kompatiblität aus ... welche Windows OS unterstützen diesen set /P ? zu 2. die Antwort verstehe ich nicht bisher löste ich es am Beispiel chkdsk so: @ECHO OFF CHKDSK C: /F /R /L:2048 /X <j.txt shutdown -r -t 00 -f und im gleichen Verzeichnis befindet sich die Datei j.txt in der nur nen j und nen Zeilenumbruch ist
LukasB 10 Geschrieben 16. März 2008 Melden Geschrieben 16. März 2008 @LukasB choice gibts standardmäßig nicht bei windows xp Bist du dir da sicher? Ich habe keine XP Maschinen mehr, aber unter WS2003 gibt es choice genauso.
PadawanDeluXe 79 Geschrieben 16. März 2008 Melden Geschrieben 16. März 2008 Schau mal hier vll bekommst du hier ein paar Anregungen für dein Problem: DOS-Software [PofoWiki]
ZeroKnowledge 11 Geschrieben 17. März 2008 Melden Geschrieben 17. März 2008 zu 1.) das sollte mindestens ab 2000 funktionieren (98 hab ich keins zum Testen hier) zu 2.) durch die Pipe | wird die Ausgabe vom ECHO-Befehl an den Aufruf rechts der Pipe weitergegeben. Wenn du chkdsk ein j als Antwort mitteilen willst, einfach echo j | chkdsk... Wenn chkdsk dann auf eine Eingabe wartet, wird die umgeleitete Ausgabe von ECHO als Eingabe verwendet. Damit sparst du dir das gefummel mit einer extra Datei.
igelchen 10 Geschrieben 22. März 2008 Autor Melden Geschrieben 22. März 2008 @ Zeroknowledge Danke dir, funktioniert super
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden