doskey

Appelle Doskey.exe, qui rappelle les commandes de ligne de commande précédemment entrées, modifie les lignes de commande et crée des macros.

Syntaxe

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

Paramètres

Paramètre Description
/reinstall Installe une nouvelle copie de Doskey.exe et efface le tampon d’historique des commandes.
/listsize=<size> Spécifie le nombre maximum de commandes dans le tampon d’historique.
/macros Affiche une liste de toutes les macros doskey. Vous pouvez utiliser le symbole de redirection (>) avec /macros pour rediriger la liste vers un fichier. Vous pouvez abréger /macros en /m.
/macros:all Affiche les macros doskey pour tous les exécutables.
/macros:<exename> Affiche les macros doskey pour l’exécutable spécifié par exename.
/history Affiche toutes les commandes stockées en mémoire. Vous pouvez utiliser le symbole de redirection (>) avec /history pour rediriger la liste vers un fichier. Vous pouvez abréger /history en /h.
/insert Spécifie que le nouveau texte que vous tapez est inséré dans l’ancien texte.
/overstrike Spécifie que le nouveau texte remplace l’ancien texte.
/exename=<exename> Spécifie le programme (c’est-à-dire l’exécutable) dans lequel la macro doskey s’exécute.
/macrofile=<filename> Spécifie un fichier qui contient les macros que vous souhaitez installer.
<macroname>=[<text>] Crée une macro qui exécute les commandes spécifiées par Text. MacroName spécifie le nom que vous souhaitez affecter à la macro. Text spécifie les commandes que vous souhaitez enregistrer. Si Text est laissé vide, MacroName est effacé de toutes les commandes affectées.
/? Affiche l'aide à l'invite de commandes.

Notes

  • Certains programmes interactifs basés sur des caractères, tels que les débogueurs de programmes ou les programmes de transfert de fichiers (FTP) utilisent automatiquement Doskey.exe. Pour utiliser Doskey.exe, un programme doit être un processus de console et utiliser une entrée mise en mémoire tampon. Les affectations de touches de programme remplacent les affectations de touches doskey. Par exemple, si le programme utilise la touche F7 pour une fonction, vous ne pouvez pas obtenir un historique des commandes doskey dans une fenêtre contextuelle.

  • Vous pouvez utiliser Doskey.exe pour modifier la ligne de commande actuelle, mais vous ne pouvez pas utiliser les options de ligne de commande à partir de l’invite de commandes d’un programme. Vous devez exécuter les options de ligne de commande doskey avant de démarrer un programme. Si vous utilisez Doskey.exe au sein d’un programme, les attributions de touches de ce programme sont prioritaires et il est possible que certaines touches de modification de Doskey.exe ne fonctionnent pas.

  • Avec Doskey.exe, vous pouvez conserver un historique des commandes pour chaque programme que vous démarrez ou répétez. Vous pouvez modifier les commandes précédentes à l’invite du programme et démarrer les macros doskey créées pour le programme. Si vous quittez, puis redémarrez un programme à partir de la même fenêtre d’invite de commandes, l’historique des commandes de la session de programme précédente est disponible.

  • Pour rappeler une commande, vous pouvez utiliser l’une des touches suivantes après avoir démarré Doskey.exe :

    Clé Description
    Flèche haut Rappelle la commande que vous avez utilisée avant celle qui s’affiche.
    Bas Rappelle la commande que vous avez utilisée après celle qui s’affiche.
    Pg. préc Rappelle la première commande que vous avez utilisée dans la session active.
    Pg. suiv Rappelle la commande la plus récente que vous avez utilisée dans la session active.
  • Le tableau suivant répertorie les touches de modification doskey et leurs fonctions :

    Touche ou combinaison de touches Description
    Gauche Déplace le point d’insertion d’un caractère en arrière.
    Flèche droite Déplace le point d’insertion d’un caractère en avant.
    CTRL+FLECHE GAUCHE Déplace le point d’insertion d’un mot en arrière.
    CTRL+FLECHE DROITE Déplace le point d’insertion d’un mot en avant.
    Origine Déplace le point d’insertion au début de la ligne.
    FIN Déplace le point d’insertion à la fin de la ligne.
    ÉCHAP Efface la commande de l’affichage.
    F1 Copie un caractère d’une colonne du modèle vers la même colonne dans la fenêtre d’invite de commandes. (Le modèle est une mémoire tampon qui contient la dernière commande que vous avez tapée.)
    F2 Recherche vers l’avant dans le modèle de la prochaine touche que vous tapez après avoir appuyé sur F2. Doskey.exe insère le texte à partir du modèle, jusqu’au caractère que vous spécifiez, sans l’inclure.
    F3 Copie le reste du modèle dans la ligne de commande. Doskey.exe commence à copier les caractères à partir de la position dans le modèle qui correspond à la position indiquée par le point d’insertion sur la ligne de commande.
    F4 Supprime tous les caractères de la position actuelle du point d’insertion jusqu’à la prochaine occurrence du caractère que vous tapez après avoir appuyé sur F4, sans l’inclure.
    F5 Copie le modèle dans la ligne de commande actuelle.
    F6 Place un caractère de fin de fichier (CTRL+Z) à la position actuelle du point d’insertion.
    F7 Affiche (dans une boîte de dialogue) toutes les commandes de ce programme stockées en mémoire. Utilisez la flèche haut et la flèche bas pour sélectionner la commande souhaitée, puis appuyez sur Entrée pour exécuter la commande. Vous pouvez également noter le nombre séquentiel devant la commande et utiliser ce nombre conjointement avec la touche F9.
    ALT+F7 Supprime toutes les commandes stockées en mémoire pour le tampon d’historique actuel.
    F8 Affiche toutes les commandes du tampon d’historique qui commencent par les caractères de la commande actuelle.
    F9 Vous invite à entrer un numéro de commande de tampon d’historique, puis affiche la commande associée au numéro que vous spécifiez. Appuyez sur Entrée pour exécuter la commande. Pour afficher tous les numéros et les commandes associées, appuyez sur F7.
    ALT+F10 Supprime toutes les définitions de macro.
  • Si vous appuyez sur la touche d’insertion, vous pouvez taper du texte dans la ligne de commande doskey au milieu de texte existant sans remplacer le texte. Toutefois, une fois que vous appuyez sur Entrée, Doskey.exe rétablit votre clavier en mode Remplacer. Vous devez appuyer à nouveau sur la touche d’insertion pour revenir en mode Insertion.

  • Le point d’insertion change de forme lorsque vous passez d’un mode à l’autre avec la touche d’insertion.

  • Si vous souhaitez personnaliser le fonctionnement de Doskey.exe avec un programme et créer des macros doskey pour ce programme, vous pouvez créer un fichier de commandes qui modifie Doskey.exe et démarre le programme.

  • Vous pouvez utiliser Doskey.exe pour créer des macros qui exécutent une ou plusieurs commandes. Le tableau suivant répertorie les caractères spéciaux que vous pouvez utiliser pour contrôler les opérations de commande lorsque vous définissez une macro.

    Caractère Description
    $G ou $g Redirige la sortie. Utilisez l’un de ces caractères spéciaux pour envoyer la sortie à un appareil ou à un fichier plutôt qu’à l’écran. Ce caractère est équivalent au symbole de redirection pour la sortie (>).
    $G$G ou $g$g Ajoute la sortie à la fin d’un fichier. Utilisez l’un de ces caractères doubles pour ajouter la sortie à un fichier existant au lieu de remplacer les données du fichier. Ces caractères doubles sont équivalents au symbole d’ajout pour la sortie (>>).
    $L ou $l Redirige l’entrée. Utilisez l’un de ces caractères spéciaux pour lire l’entrée à partir d’un appareil ou d’un fichier au lieu du clavier. Ce caractère est équivalent au symbole de redirection pour l’entrée (<).
    $B ou $b Envoie la sortie de macro à une commande. Ces caractères spéciaux sont équivalents à l’utilisation de la barre verticale, de ( et de *.
    $T ou $t Sépare les commandes. Utilisez l’un de ces caractères spéciaux pour séparer les commandes lorsque vous créez des macros ou tapez des commandes sur la ligne de commande doskey. Ces caractères spéciaux sont équivalents à l’esperluette (&) sur une ligne de commande.
    $$ Spécifie le caractère dollar ($).
    De $1 à $9 Représente toutes les informations de ligne de commande que vous souhaitez spécifier lorsque vous exécutez la macro. Les caractères spéciaux de $1 à $9 sont des paramètres de lots qui vous permettent d’utiliser différentes données sur la ligne de commande chaque fois que vous exécutez la macro. Le caractère $1 d’une commande doskey est similaire au caractère %1 d’un programme de traitement par lots.
    $* Représente toutes les informations de ligne de commande que vous souhaitez spécifier lorsque vous tapez le nom de la macro. Le caractère spécial $* est un paramètre remplaçable qui est similaire aux paramètres de lots $1 à $9, avec une différence importante : tout ce que vous tapez sur la ligne de commande après le nom de la macro est remplacé par le $* dans la macro.
  • Pour exécuter une macro, tapez le nom de la macro dans l’invite de commandes, en commençant à la première position. Si la macro a été définie avec $* ou l’un des paramètres de lots de $1 à $9, séparez les paramètres à l’aide d’une espace. Vous ne pouvez pas exécuter une macro doskey à partir d’un fichier de commandes.

  • Si vous utilisez toujours une commande particulière avec des options de ligne de commande spécifiques, vous pouvez créer une macro portant le même nom que la commande. Pour spécifier si vous souhaitez exécuter la macro ou la commande, procédez comme suit :

    • Pour exécuter la macro, tapez le nom de la macro dans l’invite de commandes. N’ajoutez pas d’espace avant le nom de la macro.

    • Pour exécuter la commande, insérez une ou plusieurs espaces dans l’invite de commandes, puis tapez le nom de la commande.

Exemples

Les options de ligne de commande /macros et /history sont utiles pour créer des fichiers de commandes afin d’enregistrer des macros et des commandes. Par exemple, pour stocker toutes les macros doskey actuelles, tapez :

doskey /macros > macinit

Pour utiliser les macros stockées dans Macinit, tapez :

doskey /macrofile=macinit

Pour créer un fichier de commandes nommé Tmp.bat qui contient les commandes récemment utilisées, tapez :

doskey /history> tmp.bat

Pour définir une macro avec plusieurs commandes, utilisez $t pour séparer les commandes, comme suit :

doskey tx=cd temp$tdir/w $*

Dans l’exemple précédent, la macro TX remplace le répertoire actif par Temp, puis affiche une liste de répertoires au format d’affichage large. Vous pouvez utiliser $* à la fin de la macro pour ajouter d’autres options de ligne de commande à dir lorsque vous exécutez l’option tx.

La macro suivante utilise un paramètre de lots pour un nouveau nom de répertoire :

doskey mc=md $1$tcd $1

La macro crée un répertoire, puis passe au nouveau répertoire à partir du répertoire actif.

Pour utiliser la macro précédente pour créer et passer à un répertoire nommé Books, tapez :

mc books

Pour créer une macro doskey pour un programme appelé Ftp.exe, incluez /exename comme suit :

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

Pour utiliser la macro précédente, démarrez FTP. Dans l’invite FTP, tapez :

go

FTP exécute les commandes open, mget et bye.

Pour créer une macro qui formate un disque rapidement et sans condition, tapez :

doskey qf=format $1 /q /u

Pour formater rapidement et sans condition un disque dans le lecteur A, tapez :

qf a:

Pour supprimer une macro appelée vlist, tapez :

doskey vlist =