Freigeben über


doskey

Ruft Doskey.exeauf, die zuvor eingegebene Befehlszeilenbefehle zurückruft, Befehlszeilen bearbeitet und Makros erstellt.

Syntax

doskey [/reinstall] [/listsize=<size>] [/macros:[all | <exename>] [/history] [/insert | /overstrike] [/exename=<exename>] [/macrofile=<filename>] [<macroname>=[<text>]]

Parameters

Parameter Description
/reinstall Installiert eine neue Kopie von Doskey.exe und löscht den Befehlsverlaufspuffer.
/listsize=<size> Gibt die maximale Anzahl von Befehlen im Verlaufspuffer an.
/macros Zeigt eine Liste aller Doskey-Makros an. Sie können das Umleitungssymbol (>) mit /macros verwenden, um die Liste in eine Datei umzuleiten. Sie können /macros mit /m abkürzen.
/macros:all Zeigt doskey-Makros für alle ausführbaren Dateien an.
/macros:<exename> Zeigt doskey-Makros für die ausführbare Datei an, die durch exename angegeben wird.
/history Zeigt alle Befehle an, die im Arbeitsspeicher gespeichert sind. Sie können das Umleitungssymbol (>) mit /history verwenden, um die Liste in eine Datei umzuleiten. Sie können /history als /h abkürzen.
/insert Gibt an, dass der eingegebene neue Text in alten Text eingefügt wird.
/overstrike Gibt an, dass neuer Text alten Text überschreibt.
/exename=<exename> Gibt das Programm (d. h. die ausführbare Datei) an, in dem das doskey-Makro ausgeführt wird.
/macrofile=<filename> Gibt eine Datei an, die die zu installierenden Makros enthält.
<macroname>=[<text>] Erstellt ein Makro, das die von Text angegebenen Befehle ausführt. MacroName gibt den Namen an, den Sie dem Makro zuweisen möchten. Text gibt die Befehle an, die Sie aufzeichnen möchten. Wenn Text leer gelassen wird, werden alle zugewiesenen Befehle aus Makroname gelöscht.
/? Zeigt hilfe an der Eingabeaufforderung an.

Remarks

  • Bestimmte zeichenbasierte, interaktive Programme wie Programmdebugger oder Dateiübertragungsprogramme (FTP) verwenden automatisch Doskey.exe. Um Doskey.exezu verwenden, muss ein Programm ein Konsolenprozess sein und gepufferte Eingaben verwenden. Die Zuweisung von Programmtasten überschreibt die Zuweisung von Doskey-Tasten . Wenn das Programm z. B. die Taste F7 für eine Funktion verwendet, können Sie den Verlauf des Befehls doskey nicht in einem Popup-Fenster abrufen.

  • Sie können Doskey.exe verwenden, um die aktuelle Befehlszeile zu bearbeiten, aber Sie können die Befehlszeilenoptionen nicht über die Eingabeaufforderung eines Programms verwenden. Sie müssen doskey-Befehlszeilenoptionen ausführen, bevor Sie ein Programm starten. Wenn Sie Doskey.exe in einem Programm verwenden, haben die Schlüsselzuweisungen dieses Programms Vorrang, und einige Doskey.exe Bearbeitungsschlüssel funktionieren möglicherweise nicht.

  • Mit Doskey.exekönnen Sie einen Befehlsverlauf für jedes Programm verwalten, das Sie starten oder wiederholen. Sie können vorherige Befehle an der Eingabeaufforderung des Programms bearbeiten und doskey-Makros starten, die für das Programm erstellt wurden. Wenn Sie ein Programm aus demselben Eingabeaufforderungsfenster beenden und dann neu starten, ist der Befehlsverlauf aus der vorherigen Programmsitzung verfügbar.

  • Um einen Befehl zurückzurufen, können Sie eine der folgenden Tasten verwenden, nachdem Sie Doskey.exegestartet haben:

    Key Description
    UP ARROW Ruft den Befehl zurück, den Sie vor dem angezeigten Befehl verwendet haben.
    DOWN ARROW Ruft den Befehl zurück, den Sie nach dem angezeigten Befehl verwendet haben.
    PAGE UP Ruft den ersten Befehl zurück, den Sie in der aktuellen Sitzung verwendet haben.
    PAGE DOWN Erinnert sich an den neuesten Befehl, den Sie in der aktuellen Sitzung verwendet haben.
  • In der folgenden Tabelle sind die Doskey-Bearbeitungstasten und ihre Funktionen aufgeführt:

    Tastenkombination oder Tastenkombination Description
    LEFT ARROW Verschiebt die Einfügemarke um ein Zeichen zurück.
    RIGHT ARROW Verschiebt die Einfügemarke um ein Zeichen nach vorne.
    CTRL+LEFT ARROW Verschiebt die Einfügemarke um ein Wort zurück.
    CTRL+RIGHT ARROW Verschiebt die Einfügemarke um ein Wort nach vorne.
    HOME Verschiebt die Einfügemarke an den Anfang der Zeile.
    END Verschiebt die Einfügemarke an das Ende der Zeile.
    ESC Löscht den Befehl aus der Anzeige.
    F1 Kopiert ein Zeichen aus einer Spalte in der Vorlage in dieselbe Spalte im Eingabeaufforderungsfenster. (Die Vorlage ist ein Speicherpuffer, der den letzten eingegebenen Befehl enthält.)
    F2 Sucht vorwärts in der Vorlage nach der nächsten Taste, die Sie eingeben, nachdem Sie F2 gedrückt haben. Doskey.exe fügt den Text aus der Vorlage bis zu dem von Ihnen angegebenen Zeichen ein, jedoch nicht einschließlich.
    F3 Kopiert den Rest der Vorlage in die Befehlszeile. Doskey.exe beginnt mit dem Kopieren von Zeichen an der Position in der Vorlage, die der Position entspricht, die durch die Einfügemarke in der Befehlszeile angegeben ist.
    F4 Löscht alle Zeichen von der aktuellen Einfügemarke bis zum, aber nicht einschließlich des nächsten Vorkommens des Zeichens, das Sie eingeben, nachdem Sie F4 gedrückt haben.
    F5 Kopiert die Vorlage in die aktuelle Befehlszeile.
    F6 Platziert ein End-of-File-Zeichen (STRG+Z) an der aktuellen Einfügemarke.
    F7 Zeigt (in einem Dialogfeld) alle Befehle für dieses Programm an, die im Arbeitsspeicher gespeichert sind. Verwenden Sie die NACH-OBEN-TASTE und die NACH-UNTEN-TASTE, um den gewünschten Befehl auszuwählen, und drücken Sie die EINGABETASTE, um den Befehl auszuführen. Sie können auch die sequenzielle Zahl vor dem Befehl notieren und diese Nummer zusammen mit der F9-TASTE verwenden.
    ALT+F7 Löscht alle Befehle, die im Arbeitsspeicher für den aktuellen Verlaufspuffer gespeichert sind.
    F8 Zeigt alle Befehle im Verlaufspuffer an, die mit den Zeichen im aktuellen Befehl beginnen.
    F9 Fordert Sie zur Eingabe einer Verlaufspuffer-Befehlsnummer auf, und zeigt dann den Befehl an, der der von Ihnen angegebenen Nummer zugeordnet ist. Drücken Sie die EINGABETASTE, um den Befehl auszuführen. Um alle Zahlen und die zugehörigen Befehle anzuzeigen, drücken Sie F7.
    ALT+F10 Löscht alle Makrodefinitionen.
  • Wenn Sie die EINF-Taste drücken, können Sie Text in der Befehlszeile doskey inmitten des vorhandenen Texts eingeben, ohne den Text zu ersetzen. Nachdem Sie jedoch die EINGABETASTE gedrückt haben, kehrt Doskey.exe die Tastatur in den Ersetzungsmodus zurück. Sie müssen die EINGABETASTE erneut drücken, um in den Einfügemodus zurückzukehren.

  • Die Einfügemarke ändert die Form, wenn Sie die EINFG-TASTE verwenden, um von einem Modus zum anderen zu wechseln.

  • Wenn Sie anpassen möchten, wie Doskey.exe mit einem Programm arbeitet, und doskey-Makros für dieses Programm erstellen möchten, können Sie ein Batch-Programm erstellen, das Doskey.exe ändert und das Programm startet.

  • Sie können Doskey.exe verwenden, um Makros zu erstellen, die einen oder mehrere Befehle ausführen. In der folgenden Tabelle sind Sonderzeichen aufgeführt, die Sie zum Steuern von Befehlsvorgängen verwenden können, wenn Sie ein Makro definieren.

    Character Description
    $G oder $g Redirects output. Verwenden Sie eines dieser Sonderzeichen, um die Ausgabe an ein Gerät oder eine Datei anstelle des Bildschirms zu senden. Dieses Zeichen entspricht dem Umleitungssymbol für die Ausgabe (>).
    $G$G oder $g$g Fügt die Ausgabe am Ende einer Datei an. Verwenden Sie eines dieser Doppelzeichen, um die Ausgabe an eine vorhandene Datei anzufügen, anstatt die Daten in der Datei zu ersetzen. Diese Doppelzeichen entsprechen dem Anfügeumleitungssymbol für die Ausgabe (>>).
    $L oder $l Redirects input. Verwenden Sie eines dieser Sonderzeichen, um Eingaben von einem Gerät oder einer Datei anstelle der Tastatur zu lesen. Dieses Zeichen entspricht dem Umleitungssymbol für eingabe (<).
    $B oder $b Sendet die Makroausgabe an einen Befehl. Diese Sonderzeichen entsprechen der Verwendung der Pipe-( und *.
    $T oder $t Separates commands. Verwenden Sie eines dieser Sonderzeichen, um Befehle zu trennen, wenn Sie Makros erstellen oder Befehle in die Befehlszeile doskey eingeben. Diese Sonderzeichen entsprechen der Verwendung des kaufmännischen Und-Zeichens (&) in einer Befehlszeile.
    $$ Gibt das Dollarzeichenzeichen ($) an.
    $1 bis $9 Stellen Sie alle Befehlszeileninformationen dar, die Beim Ausführen des Makros angegeben werden sollen. Die Sonderzeichen $1 bis $9 sind Batchparameter, mit denen Sie bei jeder Ausführung des Makros unterschiedliche Daten in der Befehlszeile verwenden können. Das $1 Zeichen in einem Doskey-Befehl ähnelt dem %1 Zeichen in einem Batch-Programm.
    $* Stellt alle Befehlszeileninformationen dar, die Beim Eingeben des Makronamens angegeben werden sollen. Das Sonderzeichen $* ist ein austauschbarer Parameter, der den Batchparametern $1 bis $9ähnelt, wobei ein wichtiger Unterschied besteht: alles, was Sie in die Befehlszeile eingeben, nachdem der Makroname durch die $* im Makro ersetzt wurde.
  • Geben Sie zum Ausführen eines Makros den Makronamen an der Eingabeaufforderung ein, beginnend an der ersten Position. Wenn das Makro mit $* oder einem der Batchparameter $1 durch $9definiert wurde, verwenden Sie ein Leerzeichen, um die Parameter zu trennen. Sie können ein Doskey-Makro nicht aus einem Batch-Programm heraus ausführen.

  • Wenn Sie immer einen bestimmten Befehl mit bestimmten Befehlszeilenoptionen verwenden, können Sie ein Makro erstellen, das denselben Namen wie der Befehl hat. Befolgen Sie die folgenden Richtlinien, um anzugeben, ob Sie das Makro oder den Befehl ausführen möchten:

    • Geben Sie zum Ausführen des Makros den Makronamen an der Eingabeaufforderung ein. Fügen Sie vor dem Makronamen kein Leerzeichen hinzu.

    • Wenn Sie den Befehl ausführen möchten, fügen Sie an der Eingabeaufforderung mindestens ein Leerzeichen ein, und geben Sie dann den Befehlsnamen ein.

Examples

Die Befehlszeilenoptionen /macros und /history sind nützlich zum Erstellen von Batch-Programmen zum Speichern von Makros und Befehlen. Geben Sie z. B. Folgendes ein, um alle aktuellen Doskey-Makros zu speichern:

doskey /macros > macinit

Um die in Macinit gespeicherten Makros zu verwenden, geben Sie Folgendes ein:

doskey /macrofile=macinit

Um ein Batchprogramm namens Tmp.bat zu erstellen, das zuletzt verwendete Befehle enthält, geben Sie Folgendes ein:

doskey /history> tmp.bat

Um ein Makro mit mehreren Befehlen zu definieren, verwenden Sie $t, um Befehle wie folgt zu trennen:

doskey tx=cd temp$tdir/w $*

Im vorherigen Beispiel ändert das TX-Makro das aktuelle Verzeichnis in Temp und zeigt dann einen Verzeichniseintrag im breiten Anzeigeformat an. Sie können am Ende des Makros verwenden $* , um andere Befehlszeilenoptionen an dir anzuhängen, wenn Sie die tx-Option ausführen.

Das folgende Makro verwendet einen Batchparameter für einen neuen Verzeichnisnamen:

doskey mc=md $1$tcd $1

Das Makro erstellt ein neues Verzeichnis und ändert sich dann aus dem aktuellen Verzeichnis in das neue Verzeichnis.

Geben Sie Folgendes ein, um das obige Makro zum Erstellen und Ändern eines Verzeichnisses mit dem Namen "Bücher" zu verwenden:

mc books

Um ein Doskey-Makro für ein Programm mit dem Namen Ftp.exezu erstellen, fügen Sie /exename wie folgt ein:

doskey /exename=ftp.exe go=open 172.27.1.100$tmget *.TXT c:\reports$tbye

Starten Sie FTP, um das vorherige Makro zu verwenden. Geben Sie an der FTP-Eingabeaufforderung Folgendes ein:

go

FTP führt die Befehle open, mget und bye aus.

Um ein Makro zu erstellen, das schnell und bedingungslos einen Datenträger formatiert, geben Sie Folgendes ein:

doskey qf=format $1 /q /u

Um einen Datenträger auf Laufwerk A schnell und bedingungslos zu formatieren, geben Sie Folgendes ein:

qf a:

Um ein Makro mit dem Namen vlist zu löschen, geben Sie Folgendes ein:

doskey vlist =