Systemvariablen in DOS editieren Als krönender Abschluß unserer »Flexiblen Eingabehilfen« hier nun eine Möglichkeit, sämtliche Systemvariablen editieren zu können. Der Stapeljob benötigt neben SAY.DEB zusätzlich noch EMIT.DEB aus dem Kapitel »Andere Befehle«. Name: VAREDIT.BAT Funktion: Eine Möglichkeit, sämtliche Systemvariablen zu editieren. Übersetzung: ./. Prüfsumme: ./. Anwendung: VAREDIT Variable Einschränkungen: Benötigt SAY- und EMIT.DEB. @ECHO OFF IF „%1″==““ GOTO ENDE SAY %1= SAY SET %1=>TMP2.BAT …
Aktuellen Pfad in DOS editieren Aus den flexiblen Eingabhilfen der vorhergehenden Seiten resultierend können wir Ihnen nun einen kurzen Tip präsentieren, der selbst in anspruchsvollen Fachzeitschriften nur über seitenlange Listings realisiert wurde: Mit PATHEDIT.BAT können Sie die Environment-Variable PATH editieren, wodurch sich der PC kurzfristig – ohne aufwendiges Neusetzen mit »SET PATH= …« – auf einen neuen Suchpfad vorbereiten läßt. Das Batch-Programm …
Denkpause für DOS DELAY.DEB verzögert die Ausführung eines Stapeljobs um eine beliebige Anzahl von Sekunden, die Sie als Parameter angeben können. Nach Ablauf der Zeit, setzt es den Errorlevel auf 0. Betätigen Sie hingegen in der Zwischenzeit eine Taste, können Sie den weiteren Ablauf der Stapeldatei beeinflußen, da der Errorlevel dann 255 beträgt. Ein typisches Anwendungsbeispiel, das sich …
KPRESSED checkt gedrückte Taste KPRESSED.DEB gibt Ihnen die Möglichkeit, auf die Eingabe einer Taste zu reagieren, ohne konkret darauf warten zu müssen. Das Programm überprüft, ob eine Taste im Tastaturpuffer enthalten ist und übergibt das Ergebnis im Errorlevel. Je nach Bedarf, müssen Sie CLEARKBD verwenden, um in entscheidenden Momenten den Tastaturpuffer zu löschen. Mit KPRESSED können Sie zum Beispiel …
Input erwartet Zeichenkette Alle Programme, die wir Ihnen bisher vorgestellt haben, besitzen einen großen Nachteil: Sie ermöglichen es nur, auf einzelne Tastendrücke zu reagieren. In vielen Fällen wäre es aber nützlich, ganze Zeichenketten , wie z. B. Verzeichnisnamen, eingeben zu können. Wir zeigen Ihnen, wie Sie das recht komfortabel bewerkstelligen können. Mit INPUT.DEB können Sie die Eingabe einer …
Inkey liefert den Errorlevel 0 INKEY.DEB wartet genau wie ASK, bis eine Taste gedrückt wird, liefert jedoch den Errorlevel 0, falls das eingebene Zeichen nicht im Parameter vorkommt. Das Programm kehrt also nach der ersten gedrückten Taste auf die Systemebene zurück, während dies bei ASK erst bei erfolgreichem Vergleich mit den Zeichen im Parameter geschieht. Das eingegebene Zeichen erscheint genau …
Auf eine Funktionstaste warten GET.DEB wartet genau wie ASK auf die Eingabe eines bestimmten Zeichens, erlaubt jedoch auch die Verwendung von Funktionstasten. Die Syntax entspricht genau der von KEYIN.DEB – die Wirkung ist mit der von ASK identisch. So lassen sich mit GET z. B. die Funktions- oder Cursortasten und auch beliebige Kombinationen mit <Strg> sowie andere erweiterte Tasten …
Ein bestimmtes Zeichen eingeben ASK.DEB wartet auf die Eingabe eines bestimmten Zeichens. Der Befehl »ASK JjNn« aktzeptiert z. B. lediglich die angegebenen Buchstaben zur Beantwortung der Frage »Ja oder Nein?« und gibt die Position des eingegebenen Zeichens im Parameter als Errorlevel zurück. Andere Zeichen werden ignoriert. Das eingegebene Zeichen gelangt zur Kontrolle auf den Bildschirm und läßt sich, falls es stören sollte, mit » …
Flexible Eingabehilfen für Batch-Dateien Pfiffige Stapeljobs scheitern häufig an einem leicht zu unterschätzenden Problem:
Warum den PC lahmlegen? Wenn Sie per Stapeljob feststellen, daß sich ein Fremder an Ihrem PC zu schaffen macht, weil er sich z. B. mehrmals unsinnige Fehleingaben leistet, reicht oft eine Schocktherapie, um größere Katastrophen zu vermeiden: SLEEP.DEB legt den Computer für maximal eine Stunde lahm. Während dieser Zeit sind weder Abbruch noch sonstige Eingaben möglich – eine Chance …