Partager via


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.

Syntax

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

Parameters

Parameter Description
/reinstall Installe une nouvelle copie de Doskey.exe et efface la mémoire tampon de l’historique des commandes.
/listsize=<size> Spécifie le nombre maximal de commandes dans la mémoire tampon d’historique.
/macros Affiche la 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 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 Texte. MacroName spécifie le nom que vous souhaitez attribuer à la macro. Text spécifie les commandes que vous souhaitez enregistrer. Si Text n’est pas renseigné, toutes les commandes affectées à MacroName sont effacées.
/? Affiche l’aide à l’invite de commandes.

Remarks

  • 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 clés 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 clés de ce programme sont prioritaires et certaines Doskey.exe clés de modification peuvent ne pas fonctionner.

  • 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 et redémarrez un programme à partir de la même fenêtre d’invite de commandes, l’historique des commandes de la session précédente du programme est disponible.

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

    Key Description
    UP ARROW Rappelle la commande que vous avez utilisée avant celle affichée.
    DOWN ARROW Rappelle la commande que vous avez utilisée après celle affichée.
    PAGE UP Rappelle la première commande que vous avez utilisée dans la session active.
    PAGE DOWN Rappelle la commande la plus récente que vous avez utilisée dans la session active.
  • Le tableau suivant répertorie les touches d’édition doskey et leurs fonctions :

    Touche ou combinaison de touches Description
    LEFT ARROW Déplace le point d’insertion vers le retour d’un caractère.
    RIGHT ARROW Déplace le point d’insertion vers l’avant un caractère.
    CTRL+LEFT ARROW Déplace le point d’insertion vers le retour d’un mot.
    CTRL+RIGHT ARROW Déplace le point d’insertion vers l’avant un mot.
    HOME Déplace le point d’insertion au début de la ligne.
    END Déplace le point d’insertion à la fin de la ligne.
    ESC Efface la commande de l’affichage.
    F1 Copie un caractère d’une colonne dans le modèle dans 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 dans le modèle la touche suivante que vous tapez après avoir appuyé sur F2. Doskey.exe insère le texte du modèle jusqu’au caractère que vous spécifiez, mais sans l’inclure.
    F3 Copie le reste du modèle dans la ligne de commande. Doskey.exe commence à copier des caractères à partir de la position du 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’à l’occurrence suivante du caractère que vous tapez après avoir appuyé sur F4.
    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 touche Flèche haut et 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 clé F9.
    ALT+F7 Supprime toutes les commandes stockées en mémoire pour la mémoire tampon d’historique actuelle.
    F8 Affiche toutes les commandes de la mémoire tampon d’historique qui commencent par les caractères de la commande active.
    F9 Vous invite à entrer un numéro de commande de mémoire tampon d’historique, puis affiche la commande associée au nombre que vous spécifiez. Appuyez sur Entrée pour exécuter la commande. Pour afficher tous les nombres et leurs commandes associées, appuyez sur F7.
    ALT+F10 Supprime toutes les définitions de macro.
  • Si vous appuyez sur la touche INSERT, vous pouvez taper du texte sur la ligne de commande doskey au milieu du texte existant sans remplacer le texte. Cependant, une fois que vous avez appuyé sur ENTER, Doskey.exe ramène votre clavier en mode Remplacer . Vous devez appuyer à nouveau sur INSERT pour revenir au mode Insertion .

  • Le point d’insertion change de forme lorsque vous utilisez la touche INSERT pour passer d’un mode à l’autre.

  • Si vous souhaitez personnaliser le fonctionnement d'Doskey.exe avec un programme et créer des macros doskey pour ce programme, vous pouvez créer un programme batch 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.

    Character Description
    $G ou $g Redirects output. Utilisez l’un de ces caractères spéciaux pour envoyer la sortie à un appareil ou un fichier au lieu de l’écran. Ce caractère équivaut 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 deux caractères pour ajouter la sortie à un fichier existant au lieu de remplacer les données dans le fichier. Ces deux caractères sont équivalents au symbole de redirection d’ajout pour la sortie (>>).
    $L ou $l Redirects input. 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 équivaut 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 du canal ( et *.
    $T ou $t Separates commands. 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’utilisation de l’ampersand (&) sur une ligne de commande.
    $$ Spécifie le caractère de signe dollar ($).
    $1 à $9 Représentez les informations de ligne de commande que vous souhaitez spécifier lors de l’exécution de la macro. Les caractères $1 spéciaux sont $9 des paramètres de lot qui vous permettent d’utiliser différentes données sur la ligne de commande chaque fois que vous exécutez la macro. Le $1 caractère d’une commande doskey est similaire au caractère d’un %1 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 semblable aux paramètres $1 de lot par le biais $9d’une différence importante : tout ce que vous tapez sur la ligne de commande après le nom de la macro est remplacé par celui $* de la macro dans la macro.
  • Pour exécuter une macro, tapez le nom de la macro à l’invite de commandes, en commençant à la première position. Si la macro a été définie avec ou avec $* l’un des paramètres $1$9de traitement par lots, utilisez un espace pour séparer les paramètres. Vous ne pouvez pas exécuter une macro doskey à partir d’un programme batch.

  • 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, suivez ces instructions :

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

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

Examples

Les options de ligne de commande /macros et /history sont utiles pour créer des programmes batch 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 programme de traitement par lots nommé Tmp.bat qui contient des commandes récemment utilisées, tapez :

doskey /history> tmp.bat

Pour définir une macro avec plusieurs commandes, utilisez-la $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 l’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 lot 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 afin de créer et de passer à un répertoire nommé Livres, 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. À l’invite FTP, tapez :

go

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

Pour créer une macro qui met en forme rapidement et inconditionnellement un disque, tapez :

doskey qf=format $1 /q /u

Pour mettre en forme rapidement et inconditionnellement un disque dans le lecteur A, tapez :

qf a:

Pour supprimer une macro appelée vlist, tapez :

doskey vlist =