Befehle unter MS-DOS 5.0

E-Books


DOSKEY Bearbeiten der Befehlszeile



Anwendung: Lädt ein speicherresidentens Programm, mit dem eingegebene Befehle wiederholt, editiert und Tastaturmakros erstellt werden können.
Syntax: DOSKEY [/reinstall][/bufsize=gr][/macros][/history]... ...[/insert|overstrike][mn=[text]]
Parameter: mn Ist der Name eines Tastaturmakros, das definiert werden soll.
text Spezifiziert Befehle, die durch das Makro mn ausgeführt werden sollen
Schalter: /reinstall Installiert eine neue Kopie von DOSKEY und löscht den Befehlspuffer. Ist DOSKEY zu diesem Zeitpunkt bereits installiert, wird es durch diesen Schalter zusätzlich noch einmal installiert (hoher Speicherverbrauch).
/bufsize Definiert die Größe des internen Puffers (gr Bytes), in dem MS-DOS die letzten Befehle und die definierten Makros speichert. Die Voreinstellung der Puffergröße beträgt 512 Bytes. Der kleinste Wert für gr wird mit 256 angegeben. Für den Maximalwert konnten wir in der Dokumentations von Mircosoft keine Angaben finden. Bei unseren Versuchen konnten wir bis 60.000 Bytes gehen, bei 63.000 Bytes stürtze unser System ab.
/macros Zeigt alle definierten Tastaturmakros an. Der Schalter kann auch als /m angegeben werden.
/history Gibt eine Liste aller im Befehlspuffer gespeicherten Befehle aus. Die Abkürzung /h ist zulässig.
/insert... Schaltet den Einfügemodus ein. Während des Editierens eines Befehls in der Kommandozeile werden neu eingegebene Zeichen eingefügt. Die Voreinstellung ist /overstrike, wodurch neu eingegebene Zeichen bereits vorhandene überschreiben
Beschreibung: Nachdem DOSKEY resident im Hauptspeicher installiert ist, werden alle auf der Kommandozeile eingegebenen Befehle in einem internen Tastaturpuffer gespeichert. Die Anzahl der gespeicherten Befehle ist von der Größe des Puffer abhängig.
Bei jedem Aufruf von DOSKEY können Makros definiert werden. d.h es kann ein Name für eine Sequenz von Befehlen definiert werden. Die Befehle werden ausgeführt, wenn der Makroname eingegeben wird. Die Makrodefinitionen werden ebenfalls im Befehlspuffer abgelegt.
Es ist zu beachten, daß Makrodefinitionen nur für eine Arbeitssitzung Gültigkeit haben, d.h Sie müssen nach dem Laden des Systems jedesmal erneut definiert werden. Wir werden auf das Arbeiten mit Makros später noch genauer eingehen.
Abrufen der Befehle: Die gespeicherten Befehle können mit folgenden Tasten in die Kommandozeile geholt werden:
Taste Erklärung
Pfeil-Nach-Oben Ruft den vorherigen Befehl ab
Pfeil-Nach-Unten Ruft den nächsten Befehl ab
Bild-Nach-Oben Holt den ersten Befehl im Puffer
Bild-Nach-Unten Holt den letzten Befehl im Puffer
Der Befehlspuffer kann nicht zirkular durchlaufen werden. Wenn z.Bsp. der erste Befehl im Puffer in der Kommandozeile angezeigt wird, hat das Drücken der Pfeil-Nach-Oben-Taste keine Auswirkung.
Editieren der Befehle: DOSKEY bietet dem Benutzer eine Vielzahl von Editiermöglichkeiten, wenn ein Befehl in der Kommandozeile angezeigt wird. Des weiteren kann mit den Funktionstasten der Befehlspuffer einfach manipuliert werden.
In der folgenden Tabelle haben wir alle Tastenfunktionen zusammengefaßt. Im Anschluß daran geben wir Ihnen die notwendigen Erklärungen.
Taste Funktion
Pfeil-Nach-Links Bewegt den Cursor um ein Zeichen nach links
Pfeil-Nach-Rechts Bewegt den Cursor um ein Zeichen nach rechts
Strg+Pfeil-Nach-Links Bewegt den Cursor an den Anfang des Wortes
Strg+Pfeil-Nach-rechts Bewegt den Cursor an den Anfang des nächsten Wortes.
Pos1 Positioniert den Cursor an den Anfang der Zeile
Ende Positioniert den Cursor an das Ende der Zeile
Esc Löscht alle Zeichen in der Kommandozeile
F1 Kopiert ein Zeichen des zuletzt eingebenen Befehls aus dem Zeilenspeicher in die Kommandozeile
F2 Sucht im Zeilenspeicher nach dem Zeichen, das nach dem Drücken der F2-Taste eingeben wurde. Die Suche beginnt bei der aktuellen Position im Zeilenspeicher. Die Zeichen von der aktuellen Position bis zu dem gefundenen Zeichen (dieses nicht eingeschlossen) werden aus dem Zeilenpuffer in die Kommandozeile kopiert.
F3 Kopiert, beginnend mit der aktuellen Position, den Rest der Zeile aus dem Zeilenspeicher in die Kommandozeile
F4 Sucht im Zeilenpuffer nach dem Zeichen, das nach dem Drücken der F4-Taste eingegeben wird. Wird dieses Zeichen gefunden, wird die aktuelle Position auf das Zeichen davor verschoben. Die Zeichen der Kommandozeile werden dadurch nicht verändert.
F5 Kopiert alle Zeichen in der Kommandozeile in den Zeilenspeicher und löscht die Kommandozeile
F6 Erzeugt ein Dateiendekennzeichen (EOF). Diese Taste hat die gleiche Wirkung wie Strg-Z.
F7 Zeigt alle Befehle im Befehlspuffer mit einer fortlaufenden Nummer an. Der erste Befehl im Puffer hat die Nummer 1.
Alt+F7 Löscht alle Befehle im Befehlspuffer.
F8 Sucht im Befehlspuffer nach einem Befehl, dessen erste bzw. ersten Zeichen vor dem Drücken der F8-Taste in der Kommandozeile eingegeben wurden.
F9 Der Benutzer wird aufgefordert, die Nummer eines Befehls einzugeben, wie sie durch Drücken der F7-Taste angezeigt werden.
Alt+F10 Alle Makrodefinitionen werden gelöscht.
Einfg Aktiviert bzw. deaktiviert den Einfügemodus, während ein Befehl in der Kommandozeile editiert wird.
Erklärungen: Die Funktionsweise der meisten Tasten werden Sie von früheren Versionen von MS-DOS kennen, da insbesondere die Funktionstasten kaum geändert wurden. Es folgen daher nur Erklärungen für die wichtigsten Tasten und einige Begriffe.
Mit Kommandozeile bezeichnen wir die Zeile nach dem Systemprompt, in der die Befehle angezeigt werden. Der Zeilenpuffer (Zeilenspeicher) beinhaltet den zuletzt eingegebenen Befehl.
Die Funktionstasten F1 bis F5 dienen zum Editieren dieses Zeilenpuffers. Die aktuelle Position definiert jenes Zeichen im Zeilenpuffer, das als nächstes bearbeitet wird (z.Bsp.mittels der F1-Taste in die Kommandozeile kopiert wird). Mit der F2-Taste können mehrere Zeichen aus dem Zeilenpuffer in die Kommaandozeile übertragen werden:

Beispiel:

Zuletzt eingegebener Befehl:
ECHO 123456789
In der Kommandozeile drücken Sie F2 und anschließend 4 und erhalten folgende Zeichen in der Kommandozeile:
C:\>ECHO 123

Alle Zeichen von der aktuellen Positions (erstes Zeichen im Zeilenpuffer) bis zu dem Zeichen vor dem Eingegebenen (4) werden aus dem Zeilenpuffer in die Kommandozeile kopiert.
Die F4-Taste funktioniert ähnlich wie die F2-Taste mit dem wichtigen Unterschied, daß nur die aktuelle Position im Zeilenpuffer auf das Zeichen vor dem Eingegebenen versetzt wird, aber keine Zeichen in die Kommandozeile übertragen werden. Dadurch können beim Editieren eines Befehls Zeichen aus dem letzten Befehl gelöscht werden.
Die Funktionstasten ab F7 sind erst ab Version 5.0 bzw. unter DOSKEY belegt. Die F7-Taste bewirkt folgende Anzeige (Beispiel):
H:\WIN:
1:dir e:
2:chkdsk c:
3:tree
H:\WIN
In unserem Beispiel haben wir seit dem Starten von DOSKEY drei Befehle eingegeben. Durch das Betätigen der F7-Taste werden diese Befehle ange zeigt, und jeder Befehl erhält eine Zeilennummer.
Nach dem Drücken der F9-Taste fragt das System den Benutzer nach der Zeilennummer des gewünschten Befehls. Antwortet der Benutzer in unserem Beispiel durch die Eingabe von 2, wird der Befehl chkdsk c: in die Kommandozeile übertragen. Hier kann er editiert oder unverändert aktiviert werden.
Eine sehr nützliche Funktion bietet die F8-Taste. Mit ihrer Hilfe kann ein gespeicherter Befehl in die Kommandozeile geholt werden, in dem so viele Zeichen von dem Befehl eingegeben werden, daß er dadurch eindeutig identifiziert ist. Anschließend wird die F8-Taste gedrückt und der entsprechende Befehl in die Kommandozeile kopiert.
In unserem Beispiel würde es reichen, ein C einzugeben, um nach dem Drücken der F8-Taste den Befehl chkdsk c: in der Kommandozeile zu haben. Beginnen mehrere Befehle im Befehlspuffer mit dem bzw. den eingegebenen Zeichen, wird immer der mit der höheren Zeilennummer in die Kommandozeile kopiert.
(c) Jürgen Richter